Python的基础知识(三)
2020-07-31 17:23:26 来源:易采站长站 作者:
Python的基础知识(三)
运算符与表达式
算数运算符
| 运算符 | 说明 |
|---|---|
| + | 加 |
| – | 减 |
| * | 乘 |
| / | 除 |
| % | 求余,即返回除法的余数 |
| // | 取整数,即返回商的整数部分 |
| ** | 幂,即返回x的y次方 |
注意:在算数操作符中使用%求余,如果除数(第二个操作数)是负数,那么取得的结果也是一个负值。
赋值运算符
| 运算符 | 说明 |
|---|---|
| = | 简单的赋值运算 |
| += | 加赋值 |
| -= | 减赋值 |
| *= | 乘赋值 |
| /= | 除赋值 |
| %= | 取余数赋值 |
| **= | 幂赋值 |
| //= | 最整除赋值 |
比较(关系)运算符
| 运算符 | 作用 |
|---|---|
| > | 大于 |
| < | 小于 |
| == | 等于 |
| != | 不等于 |
| >= | 大于等于 |
| <= | 小于等于 |
逻辑运算符
| 运算符 | 含义 | 用法 | 结合方向 |
|---|---|---|---|
| and | 逻辑与 | op1 and op2 | 左到右 |
| or | 逻辑或 | op1 or op2 | 左到右 |
| not | 逻辑非 | not op | 右到左 |
位运算
位运算是把数字看做二进制数来进行计算的,因此,需要先将要执行运算的数据转换为二进制,然后才能执行运算。Python中的位运算符有按位与(&)、按位或(|)、按位或与(^)、按位取反(~)、左移位(<>)运算符
1.“按位与”运算
“按位与”运算的运算符为“&”,它的运算法则是:两个操作数据的二进制表示,只有对应位都是1时,结果位才是1,否则为0。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
2.“按位或”运算
“按位或”运算的运算符为“|”,它的运算法则是:两个操作数据的二进制表示,只有对应位都是0时,结果位才是0,否则为1。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
3.“按位异或”运算
“按位异或”运算的运算符是“^”,它的运算法则是:当两个操作数的二进制表示相同(同时为0或同时为1)时,结果为0,否则为1。若两个操作数的精度不同,则结果数的精度与精度高的操作数相同。
4.“按位取反”运算
“按位取反”运算也称“按位非”运算,运算符为“~”。“按位取反”运算就是将操作数对应二进制中的1修改为0,0修改为1。
5.左移位运算符<<
左移位运算符<<是将一个二进制操作数向左移动指定的位数,左边(高位端)溢出的位被丢弃,右边(低位端)的空位用0补充。左移位运算相当于乘以2n
6.右移位运算符>>
右移位运算符>>是将一个二进制操作数向右移动指定的位数,右边(低位端)溢出的位被丢弃,而在填充左边(高位端)的空位时,如果最高位是0(正数),左侧空位填入0;如果最高位是1(负数),左侧空位填入1.右移位运算相当于除以2n。
说明:由于移位运算的速度很快,在程序中遇到表达式乘以或除以2n的情况时,一般采用移位运算来代替。
运算符的优先级
| 类型 | 说明 | 优先级 |
|---|---|---|
| ** | 幂 | 由 |
| ~、+、- | 取反、正号和负号 | 高 |
| *、/、%、// | 算数运算符 | |
| +、- | 算数运算符 | |
| <> | 位运算符中的左移或右移 | |
| & | 位运算符中的按位与 | |
| ^ | 位运算符中的按位异或 | |
| ▏ | 位运算符中的按位或 | 至 |
| <、、>=、!=、== | 比较运算符 | 低 |
条件表达式
在程序开发时,经常会根据表达式的结果有条件地进行赋值。例如,要返回两个数中较大的数,可以使用以下的if语句。
a = 10
b = 8
if a > b:
r = a
else:
r = b
上面的代码可以使用条件表达式进行化简,代码如下:
a = 10
b = 8
r = a if a > b else b
使用条件表达式时,先计算中间的条件(a>b),如果结果为True,返回if语句左边的值,否则返回else右边的值。例如上面的表达式的结果,即r的值为10。
作者:神秘の松果













闽公网安备 35020302000061号