• python基础:位运算符以及运算符优先级


    python的所有位运算符,示例:

    位运算都是首先将数转换为二进制,然后再进行运算。

    其中&,|,^,~,<<,>> 分别是 按位与运算,按位或运算,按位异或运算,按位翻转运算,按位左移,按位右移

    其中按位异或指的是,对于两个数的二进制,二进制上对应位如果相同则为0,不同则为1。

    其他运算由以下示例可以看出。

    # 7 转换为二进制为 00000111, 18 转换为二进制位 00010010
    a = 7 & 18  # a为00000010
    print(a)    # 输出为2
    
    # 7 转换为二进制为 00000111, 18 转换为二进制位 00010010
    b = 7 | 18  # b为00010111
    print(b)    # 输出为23
    
    # 7 转换为二进制为 00000111, 18 转换为二进制位 00010010(相同变为0,不相同变为1)
    c = 7 ^ 18  # c为00010101
    print(c)    # 输出为21
    
    # 18 转换为二进制位 00010010
    d = ~18     # ~x = -(x + 1)
    print(d)    # 输出为-19
    
    # 18 转换为二进制位 00010010
    e = 18 << 1  # e为00100100,左移n个单位相当于乘以2的n次幂
    print(e)     # 输出为36
    
    # 18 转换为二进制位 00010010
    f = 18 >> 1  # f位00001001,右移n个单位相当于除以2的n次幂
    print(f)     # 输出为9
    g = 18 >> 2  # 18 / 4
    print(g)     # 输出为4

     

     

    Python的优先级排行榜:

      优先级: 1.函数、寻址       

            2.幂运算 **

               3.翻转运算~

            4.正负号,正负号要紧挨操作数,否则会出错,在python3中可以不用紧挨操作数
      5.*、/、%
      6.+,-
      7.<<,>>
       8.&、^、|,这三个也有优先级,但处于同一级,故而不细分
      9.比较运算符
          10.逻辑的not、and、or
         11.lambda表达式:
        
    简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。

     python优先级使用小技巧:使用括号可以控制运算式子的优先级!!!
  • 相关阅读:
    jquery笔记
    mysql优化三
    MYSQL优化
    mysql大表优化
    mybatis缓存机制
    mybatis主键返回语句 使用方法,就是实体类.getid即可拿到返回的id
    mybatis组合实体查询
    HTTP Status 500
    Perfmon——为什么“% Disk Time”计数器的值会大于100%?
    Lint——Android SDK提供的静态代码扫描工具
  • 原文地址:https://www.cnblogs.com/kkkwoniu/p/7689196.html
Copyright © 2020-2023  润新知