python运算符

  • 算术运算符

    • +:实现对象相加,可用于数值类型,字符串类型(字符串拼接),元组类型(元组元素拼接),列表类型(元素拼接)。
    • -:得到一个数的负数 or 一个数减去另一个数
    • *:两个数相乘 or 重复若干次的字符串、元组、列表内的元素
    • /:除 运算符;x/y
    • %:取余数
    • **:幂次运算
    • //取整运算
  • 比较运算符

    • ==:等于,比较两个对象是否相等
    • !=:不等于
    • >:大于
    • <:小于
    • >=:大于等于
    • <=:小于等于
  • 赋值运算符

    • =:简单的赋值运算符
    • +=:加法赋值运算符
    • -=:减法赋值运算符
    • *=:乘法赋值运算符
    • /=:除法赋值运算符
    • %=:取余赋值运算符
    • **=:幂赋值运算符
    • //=:取整赋值运算符
  • 逻辑运算符

    • and:a and y,布尔值,如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。
    • or:x or y,布尔值,如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。
    • not:not x,布尔值,如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。
  • 位运算符

    位运算符,是吧 数字 看作 二进制 来进行计算。注意下方数字x,y会转换成二进制。

    • x & y:与运算符,二进制位都为1,位运算结果为1。
    • x | y:或运算符,二进制位有一个为1,位运算结果为1。
    • ^x:异或运算符,二进制位相异时,位运算结果为1。
    • ~x:取反运算符,二进制位位取反,即0变1,1变0。
    • x « n:左移运算符,所有二进制位向左移动n位。
    • x » n:右移运算符,所有二进制位向右移动n位。
  • 成员运算符

    测试某个成员是否在一个对象中,包括字符串、列表、元组。

    • x in y:如果x在y中返回True,否则返回False。
    • x not in y:如果x不在y中,返回True,否则返回False。
  • 身份运算符

    比较两个对象是否来自相同的存储单元。

    • x is y:如果x,y两个对象来自相同的存储单元,返回True。类似:id(x) == id(y)
    • x is not y:如果x,y来自不同的存储单元,返回True。类似:id(x) != id(y)
  • 运算符优先级

    从上到下优先级依次递减!

    • **:指数 (最高优先级)
    • ~, +, - :按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
    • *, /, %, // :乘,除,取模和取整除
    • +, - :加法减法
    • «, » :左移,右移运算符
    • & :位 AND
    • ^, | :位运算符
    • <=, <, >, >= :比较运算符
    • ==, != :等于运算符
    • =, %=, /=, //=, -=, +=, *=, **= :赋值运算符
    • is, is not :身份运算符
    • in, not in :成员运算符
    • not, and, or :逻辑运算符

注:只要这些运算符放在小括号()里面则优先级就是最高的。而且做比较的时候,要养成用小括号()给出判断顺序,使得代码可读性更好!