python运算符

运算符

  • 算术运算符:
    • 标准算术运算符:加(+),减(-),乘(*),除(/),整除(//)
    • 取余运算符:%
    • 幂运算符:**
    • 代码:
    • print(1+1)  #加法运算
      print(3-2)  #减法运算
      print(1*3)  #乘法运算
      print(4/2)  #除法运算
      print(10//3)  #整除运算
      print(7%4)  #取余运算
      print(10**3)  #幂运算

      运行结果:

    • 运算符表
  • 赋值运算符
    • =:
    • 执行顺序:右->左
    • 支持链式赋值:a=b=c=20
    • 支持参数赋值:+=,-=,*=,/=,//=,%=
    • 支持系列解包赋值:a,b,c=20,30,40
    • 代码
    • e=3+4
      print(e)
      print('---链式赋值---')
      a=b=c=20 #链式赋值
      print(a,id(a))
      print(b,id(b))
      print(c,id(c))
      print('----参数赋值----')
      a=20
      a+=30   #a=a+30
      print(a)
      a-=15   #a=a-15,现在a的值为50
      print(a)
      a*=2    #a=a*2
      print(a)
      a/=2    #a=a/2
      print(a)
      a//=2
      print(a)
      a%=3
      print(a)
      print('----解包赋值-----')
      a,b,c=10,20,30    #左右变量的个数和值的个数要一直,要不然会报错
      print(a,b,c)

      运行结果:

  • 比较运算符
    • 对变量或表达式的结果进行大小,真假等比较
    • 比较运算符:
      • >,<,>=,<=,!=
      • ==:对象value的比较
      • is,is not:对象的id的比较
      • print('---比较运算符,比较运算符的结果为bool类型---')
        a,b=10,20
        print('a大于b吗',a>b) #false
        print('a小于b吗',a<b) #true
        print('a<=b吗',a<=b) #true
        print('a>=b吗',a>=b) #false
        print('a!=b吗',a!=b) #true
        print('a==b吗',a==b) #false
        a=10
        b=10
        print(a==b) #true ,说明a和b的value相等
        print(a is b) #true,说明a和b的id标识,相等
        a1=[11,22,33,44]
        a2=[11,22,33,44]
        print(a1==a2) #true
        print(a1!=a2) #false,说明此a1和a2的id不相等
        print(a is not b) #false
        print(a1 is not a2) #true

        运行结果:

  • 布尔运算符
    • 布尔运算符:
      • and
      • or
      • not
      • in
      • not in
      • 代码:
      • print('---布尔运算符---')
        a,b=1,2
        print('----and 并且-------')
        print(a==1 and b==2) #true true and true-->true
        print(a==1 and b<2) #false true and false-->false
        print(a!=1 and b==2) #false false and true-->false
        print(a!=1 and a!=2) #false false and false-->false
        print('----or 或者-----')
        print(a==1 or b==2) #true or true --->true
        print(a==1 or b<2)  #true or false --->true
        print(a!=1 or b==2) #false or true --->true
        print(a!=1 or b!=2) #false or false --->false
        print('---not 对bool类型操作数取反----')
        f=True
        f1=False
        print(not f) #false
        print(not f1) #true
        print('------in,not in---------')
        f='helloword'
        print('h'in f) #true
        print('q'in f) #false
        print('h'not in f) #false
        print('p'not in f) #true

        运行结果:

  • 位运算符
    • 位运算符:将数据转成二进制进行计算
    • 位运算符:
      • 位与&:对应数位都是1,结果数位才是1,否则为0
      • 位或|:对应数位都是0,结果数位才是0,否则为1
      • 左移位运算符<<:高位溢出舍弃,低位补0
      • 右移位运算符>>:低位溢出舍弃,高位补0
      • 代码:
      • print('---位运算符---')
        print(4&8)  #按位与&,同为1时结果才为1
        print(4|8)  #按位或|,用为0时结果才为0
        
        print(4<<1) #向左移动1位(移动一个位置),相当于乘以2
        print(4<<2) #向左移动2位(移动二个位置),相当于乘以4
        
        print(4>>1) #向右移动1位(移动一个位置),相当于除以2
        print(4>>2) #向右移动2位(移动2个位置),相当于除以4

        运行结果:

  • 运算符的优先级
    • (),先算括号中的
    • 1,算术运算符,先算乘除后算加减
    • 2,位运算符
    • 3,比较运算符
    • 4,布尔运算符
    • 5,赋值运算符
    • 注意:有括号先算括号中的
原文地址:https://www.cnblogs.com/wangqiangya/p/15771958.html