阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Python运算符与表达式

168次阅读
没有评论

共计 2191 个字符,预计需要花费 6 分钟才能阅读完成。

一、表达式

  • 概念

    由变量、常量和运算符组成的式子称为表达式

  • 阅读表达式

    1、阅读表达式的功能

    2、阅读表达式的值

二、算术运算符

  • 算术运算符

    + * / % // **
    取模 取整 求幂
  • 算术运算表达式

    功能:进行符号对象的算数运算,不会修改变量的值

    值:相关算数运算的结果

  • 代码

    print(5 + 2) print(5 - 2) print(5 * 2) print(5 / 2) print(5 % 2) print(5 // 2) print(5 ** 2)

三、赋值运算符

  • 赋值运算符

    =
    赋值
  • 赋值运算表达式

    格式:变量 = 表达式

    功能:计算等号右侧“表达式”的值,并赋值给等号左侧的“变量”

    值:赋值结束后变量的值

  • 代码

    num3 = 10 num4 = num3 + 20 print('num4 = %d' % num4)

四、复合运算符

+= a += b 相当于 a = a + b
-= a -= b 相当于 a = a – b
*= a *= b 相当于 a = a * b
/= a /= b 相当于 a = a / b
%= a %= b 相当于 a = a % b
//= a //= b 相当于 a = a // b
**= a **= b 相当于 a = a ** b

五、位运算符

  • &

    按位与运算符:参与运算的两个值,如果两个相应位都为 1,则该位的结果为 1,否则为 0

    ''' 0000 0101 0000 0111 -------------- 0000 0101 ''' print(5 & 7)
  • |

    按位或运算符:参与运算的两个值,如果两个相应位有一个为 1 时,则该位的结果为 1,否则为 0

    ''' 0000 0101 0000 0111 -------------- 0000 0111 ''' print(5 | 7)
  • ^

    按位异或运算符:参与运算的两个值,如果两个相应位不同时,则该位的结果为 1,否则为 0

    ''' 0000 0101 0000 0111 -------------- 0000 0010 ''' print(5 ^ 7)
  • ~

    按位取反运算符:对数据的每个二进制位进行取反操作,把 1 变为 0,把 0 变为 1

    ''' 0000 0101 -------------- 1111 1010 1000 0101 1000 0110 ''' print(~5)
  • <<

    左移动运算符:运算数的各二进制位全部向左移动若干位,由符号右侧的数字指定移动的位数,高位丢弃,低位补 0

    ''' 0000 1001 ---------------- 0010 0100 ''' print(9 << 2)
  • >>

    右移动运算符:运算数的各二进制位全部向右移动若干位,由符号右侧的数字指定移动的位数,低位丢弃,高位补 0

    ''' 0000 1001 ---------------- 0000 0010 ''' print(9 >> 2)

六、真值与假值

  • 假值(False)

    0 0.0“”None False

  • 真值(True)

    除了假值就是真值

七、关系运算符

  • 关系运算符

    > < >= <= == !=
    大于 小于 大于等于 小于等于 等于 不等于
  • 关系运算表达式

    格式:表达式 1 关系运算符 表达式 2

    功能:计算表达式 1 和表达式 2 的值

    值:如果关系成立,则整个关系运算表达式的值为真,关系不成立,则整个关系运算表达式的值为假

  • 代码

    print(1 > 0) print(1 > 2)

八、逻辑运算符

  • 逻辑与

    • 逻辑与运算符

      and

    • 逻辑与运算表达式

      格式:

      ​ 表达式 1 and 表达式 2

      ​ 表达式 1 and 表达式 2 and 表达式 3 and …… and 表达式 n

      功能:从左到右依次计算“表达式”的值,直到某一个“表达式”的值为假才停止计算

      值:

      ​ 如果表达式 1 的值为真,表达式 2 的值为真,则整个表达式的值为真
      ​ 如果表达式 1 的值为真,表达式 2 的值为假,则整个表达式的值为假
      ​ 如果表达式 1 的值为假,表达式 2 的值为真,则整个表达式的值为假
      ​ 如果表达式 1 的值为假,表达式 2 的值为假,则整个表达式的值为假

      总结:有一个为假就为假

    • 代码

      print(1 and 0)
  • 短路原则

    从左到右依次计算“表达式”的值,直到某一个“表达式”的值为假才停止计算,后面的表达式不会在进行计算,但是 python 无法验证 (在表达式中无法使用赋值)

  • 逻辑或

    • 逻辑或运算符

      or

    • 逻辑或运算表达式

      格式:

      ​ 表达式 1 or 表达式 2
      ​ 表达式 1 or 表达式 2 or 表达式 3 or …… or 表达式 n

      功能:从左到右依次计算“表达式”的值,直到某一个“表达式”的值为真才停止计算

      值:

      ​ 如果表达式 1 的值为真,表达式 2 的值为真,则整个表达式的值为真
      ​ 如果表达式 1 的值为真,表达式 2 的值为假,则整个表达式的值为真
      ​ 如果表达式 1 的值为假,表达式 2 的值为真,则整个表达式的值为真
      ​ 如果表达式 1 的值为假,表达式 2 的值为假,则整个表达式的值为假

      总结:有一个为这就为真

    • 代码

      print(1 or 0)
  • 逻辑非

    • 逻辑非运算符

      not

    • 逻辑非运算表达式

      格式:not 表达式

      值:

      ​ 如果“表达式”的值为真,则整个表达式的值为假
      ​ 如果“表达式”的值为假,则整个表达式的值为真

      总结:颠倒黑白

    • 代码

      print(not 0)

九、成员运算符

  • 符号

    in 如果在指定的序列中找到值则返回真,否则返回假
    not in 如果在指定的序列中找不到值则返回真,否则返回假
  • 格式

    x in seq

    x not in seq

    说明:x 表示一个数据,seq 表示一个集合

十、身份运算符

  • 符号

    is 判断两个标识符是否引用同一个对象,是的话返回真,否则返回假
    is not 判断两个标识符是否不是引用同一个对象,是的话返回真,否则返回假
  • 格式

    obj1 is obj2

    obj1 is not obj2

十一、运算符优先级

  1. **

  2. ~ + - 按位取反,一元运算符(正负号)

  3. * / % //

  4. + - 二元运算符

  5. << >>

  6. &

  7. | ^

  8. > < >= <=

  9. == !=

  10. += -= *= /= %= //= **=
  11. is is not

  12. in not in

  13. and or not

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-05-26发表,共计2191字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中