zoukankan      html  css  js  c++  java
  • Python-运算符和其优先级

    运算符

      算数运算符 + - * ** / // %

    print(4 + 5)
    print("a" + "b")
    print([1, 2] + [1, 4])
    print(10 - 2)
    print("a" * 5)
    print([1, 2] * 3)
    print("a" ** 3)
    print(10 / 2)
    print(10 // 2.0)
    print(10 // 2)
    print(10 % 3)

      赋值运算符 = += *= /= %= **= //=
      sum = sum + number => sum += number 先运算 number运算最后执行 + 运算

    number = 5
    number -= 10 -5
    print(number, 5 - 10 - 5)

      链式赋值

    a, b, c = 1, 2, 4
    print(a, b, c)


      关系运算符, 判断值(返回True False)

        == != > < >= <=

    print("a" == "a")
    print("a" != "a")
    print("A" >= "a", ord("A"), ord("a"))


      同类型才可以做关系运算
        1. number(int float bool)
        2. str list tuple 会依次取出值进行比较, 出结果直接返回,非数字字符则转换为ascii码对应的数字进行比较

      逻辑运算符 and(与) or(或) not(非)
        and 第一个结果为False就不会判断第二个,直接返回第一个值
        or 第一个结果为True就不会判断二个,直接返回第一个值
        not 返回(True False)

    print("a" and "b")
    print(None and "b")
    
    print("a" or None)
    print(None or "a")
    
    print(not "a")
    print(not None)
    
    print(not "a" and "b")
    print(not "a" or "b")


    运算符优先级
      1. ()
      2. not
      3. and
      4. or
      优先级相同从左到右


    位运算符     把数字转化为二进制数进行运算
        &   按位与 把数字换为对应的二进制,每一二进制位都进行与运算,得出结果转换为10进制
        |     按位或
        ^   按位异或
        ~   按位取反
        <<   左移动
        >>   右移动


    优先级
      1. 算数运算符
      2. 关系运算符
      3. 逻辑运算符
      推荐使用 () 强制或标明优先级顺序

  • 相关阅读:
    The hardest problem ever
    1146 Topological Order
    1147 Heaps
    Weekly Contest 184
    1148 Werewolf
    1149 Dangerous Goods Packaging
    1150 Travelling Salesman Problem
    1151 LCA in a Binary Tree (30point(s))
    1152 Google Recruitment
    美团2020春招笔试
  • 原文地址:https://www.cnblogs.com/2bjiujiu/p/9086012.html
Copyright © 2011-2022 走看看