Python运算符与表达式
一、表达式
- 概念 由变量、常量和运算符组成的式子称为表达式
 - 阅读表达式 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
<span class="hljs-string">'''
  0000 0101
  0000 0111
--------------
  0000 0101
'''</span>
print(<span class="hljs-number">5</span> & <span class="hljs-number">7</span>)|
按位或运算符:参与运算的两个值,如果两个相应位有一个为1时,则该位的结果为1,否则为0
<span class="hljs-string">'''
  0000 0101
  0000 0111
--------------
  0000 0111
'''</span>
print(<span class="hljs-number">5</span> | <span class="hljs-number">7</span>)^
按位异或运算符:参与运算的两个值,如果两个相应位不同时,则该位的结果为1,否则为0
<span class="hljs-string">'''
  0000 0101
  0000 0111
--------------
  0000 0010
'''</span>
print(<span class="hljs-number">5</span> ^ <span class="hljs-number">7</span>)~
按位取反运算符:对数据的每个二进制位进行取反操作,把1变为0,把0变为1
<span class="hljs-string">'''
  0000 0101
--------------
  1111 1010
  1000 0101
  1000 0110
'''</span>
print(~<span class="hljs-number">5</span>)<<
左移动运算符:运算数的各二进制位全部向左移动若干位,由符号右侧的数字指定移动的位数,高位丢弃,低位补0
<span class="hljs-string">'''
    0000 1001
----------------
    0010 0100
'''</span>
print(<span class="hljs-number">9</span> << <span class="hljs-number">2</span>)>>
右移动运算符:运算数的各二进制位全部向右移动若干位,由符号右侧的数字指定移动的位数,低位丢弃,高位补0
<span class="hljs-string">'''
    0000 1001
----------------
    0000 0010
'''</span>
print(<span class="hljs-number">9</span> >> <span class="hljs-number">2</span>)六、真值与假值
- 假值(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
 
十一、运算符优先级
-  
** -  
~+-按位取反,一元运算符(正负号) -  
*/%// -  
+-二元运算符 -  
<<>> -  
& -  
|^ -  
><>=<= -  
==!= -  
+=-=*=/=%=//=**= -  
isis not -  
innot in -  
andornot 
相关文章
- OpenCV进行人脸识别(Python)
 - python & 0xFFFFFFFF打印输出负数的补码[通俗易懂]
 - 用Python教训盗号骗子
 - Python中的下划线
 - Python判断字符串是否包含子字符串
 - python interpolate.interp1d_索引错误scipy.interpolate.interp1d「建议收藏」
 - Python实现门禁管理系统
 - Python进阶40-drf框架(二)
 - 如何理解python报错信息_csb报错
 - Python中的取整、取余运算「建议收藏」
 - python解决 ModuleNotFoundError: No module named _bz2
 - 如何设置python的环境变量_anaconda环境变量手动设置
 - Python日志管理
 - 如何给ESP32-CAM编译micropython
 - [Python] 使用print作进度条(解决end=''时print不显示的问题)
 - 如何利用Python画图
 - 简单的Python脚本,实现ssh登录配置路由器
 - python构建IP代理池(Proxy Pool)[通俗易懂]
 - Python基础19-面向对象(高级)
 - 20·Python基础-单例模式四种实现方式