zoukankan      html  css  js  c++  java
  • ​Python自学入门基础教程-运算符

    Python算术运算符

    • 普通算术运算符

    1+ - * / :加减乘除
    • 特殊算术运算符
      • 取模(余) :%,返回除法的余数
      • 幂:**, 返回x的y次幂
      • 取整://, 返回商的整数部分(向下取整)

    15%2 #输出结果是1  
    22%10 #输出结果是0
    32**3 #输出结果是8
    411//2 #输出结果5  
    5-7//2 #输出结果4
    

    Python比较运算符

    比较结果为布尔值,布尔值(Boolean Value)用 True 和 False 来表示。区分大小写

    • 等于: ==,比较两个对象是否相等

    • 不等于:!=,比较两个对象是否不相等

    • 大于: >,返回x是否大于y

    • 小于: <, 返回x是否小于y

    • 大于等于: >=,返回x是否大于等于y

    • 小于等于: <=,返回x是否小于等于y
    11==2 #输出结果False
    21!=2 #输出结果是True
    31>2 #输出结果False
    41<2 #输出结果True
    51>=2 #输出结果False
    61<=2 #输出结果True
    

      

    Python赋值运算符

    • =, 直接赋值

    • 加法赋值:+=, y += x相当于 y = y+x
    • 减法赋值:-=, y -= x相当于 y = y-x
    • 乘法赋值:*=, y *= x相当于 y = y * x
    • 除法赋值:/=, y /= x相当于 y = y/x
    • 取模赋值:%=, y %= x相当于 y = y%x
    • 幂赋值:**=, y **= x相当于 y = y ** x
    • 取整赋值://=, y //= x相当于 y = y+x
    • 海象赋值::=, n:=len(a) 对n进行赋值,可在表达式内部使用
    1x=2, y=5
    2y += x  #输出结果y=7
    3y -= x  #输出结果y=3
    4y *= x  #输出结果y=10
    5y /= x  #输出结果y=2
    6y %= x  #输出结果y=1
    7y **= x  #输出结果y=25
    8y //= x  #输出结果y=2
    9print(y:=len([1,2,3,4,5]) #输出5
    

      

     

    Python逻辑运算符

    • 与:and,如果x为0/False,x and y 返回0/False,否则它返回y的计算值
    • 或:or,如果x是非0或非False,它返回x的值,否则它返回y的计算值。
    • 非:not, 如果x为True,返回False ;如果x为False,它返回True

    1False and 2 #输出结果是False
    21 and 2 #输出结果是3
    3False or 3 #输出结果是3
    41 or 3 #输出结果是1
    5not 1 #输出结果是False
    6not 0 #输出结果是True
    

      

    Python成员运算符

    • in:如果在指定的序列中找到值返回 True,否则返回 False。
    • not in:如果在指定的序列中没有找到值返回 True,否则返回 False。

    1'a' in 'basic' #输出结果True
    21 not in [1,2,3,4,5] #输出结果False
    

      

    Python身份运算符

    • is:判断两个标识符是不是引用自一个对象
    • not is:判断两个标识符是不是引用自不同对象

    1x=10,y=10
    2x is y #输出结果True
    3x is not y #输出结果False
    

      

    注:is 用于判断两个变量引用对象是否为同一个(同一块内存空间), == 用于判断引用变量的值是否相等。

    Python位运算符

    • 按位与:&,参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
    • 按位或:|,只要对应的二个二进位有一个为1时,结果位就为1。
    • 按位异或:^,当两对应的二进位相异时,结果为1
    • 按位取反:~,对数据的每个二进制位取反,即把1变为0,把0变为1
    • 左移:y<<x,把y的各二进位全部左移x位。移位时高位丢弃,低位补0
    • 右移:y>>x,把y的各二进位全部右移x位。

    1x = 3       # 3 = 0000 0011
    2y = 5       # 5 = 0000 0101
    3z = 0
    4z = x & y   # z = 0000 0001 输出结果z=1
    5z = x | y   # z = 0000 0111 输出结果z=7
    6z = x ^ y   # z = 0000 0110 输出结果z=6
    7z = ~x      # z = 1111 1100 输出结果z=-4
    8z = y << x  # z = 0010 1000 输出结果40
    9z = y >> x  # z = 0000 0000 输出结果0
    

      注:左移相当于乘以x个2,即y*2*2*2=40(x=3时),右移同理

    Python运算符优先级(由高到低)

     1**                          幂 (最高优先级)
     2~                           按位取反
     3* / % //                    乘,除,取模,取整
     4+ -                         加法,减法
     5>> <<                       右移,左移
     6&                           按位与
     7^ |                         按位异或、按位或
     8<= < > >=                   比较运算符
     9<> == !=                    等于运算符
    10= %= /= //= -= += *= **=    赋值运算符
    11is/is not                   身份运算符
    12in/not in                   成员运算符
    13not/and/or                  逻辑运算符
    

      

  • 相关阅读:
    12.python笔记之mysqldb模块
    13.python笔记之pyyaml模块
    11.python之线程,协程,进程,
    2.saltstack笔记之目标,模块,返回写入数据库
    6.django笔记之orm
    5.django笔记之form保存表单信息,动态select
    4.django笔记之admin
    docker批量删除none镜像
    docker 给none镜像打镜像
    jenkins卡在等待界面解决方法
  • 原文地址:https://www.cnblogs.com/daniumiqi/p/12095029.html
Copyright © 2011-2022 走看看