🙋 哈喽大家好,本次是python数据分析、挖掘与可视化专栏第三期
⭐本期内容:运算符与表达式
🏆系列专栏:Python数据分析、挖掘与可视化
👍保持开心,拒绝拖延,你想要的都会有,加油加油!
文章目录
- 前言
- 算术运算符
- +运算符
- -运算符
- *运算符
- /和//运算符
- %运算符
- **运算符
- 关系运算符
- 成员测试运算符
- 集合运算符
- 逻辑运算符
- 总结
前言
本期内容为python的运算符与表达式~
参考书籍:《Python数据分析、挖掘与可视化》
在python中,单个常量或变量可以看作最简单的表达式,使用赋值运算符之外的其他任意运算符连接的式子也是表达式,在表达式中还可以包含函数调用。
常用的python运算符如下:
运算符 | 功能说明 |
---|---|
+ | 算数加法,列表、元组、字符串合并与连接,正号 |
- | 算术减法,集合的差集,相反数 |
* | 算数乘法,序列元素的重复 |
/ | 真除法 |
// | 求整商,向下取整 |
% | 求余数,字符串格式化 |
** | 幂运算,指数可以为小数 |
<、<=、>、>=、==、!= | 值大小比较,集合的包含关系比较 |
and、or、not | 逻辑与、逻辑或、逻辑非 |
in | 成员测试 |
is | 测试两个对象是否为同一个对象的引用 |
^、&、<<、>>、~ | 位异或、位与、左移位、右移位、位求反 |
&、^ | 集合交集、对称差集 |
算术运算符
+运算符
+运算符除了用于算数加法,还可以用于列表、元组、字符串的连接。
print(6+6)
print(3.5+5.6)
print((3+4j)+(5+6j))
print('abc'+'def')
print([1,2]+[3,4])
print((1,2)+(3,))
-运算符
-运算符除了用于整数、浮点数、复数之间的算术减法和相反数之外,还可以计算集合的差集。
注意:进行浮点数之间的运算时,浮点数精度问题有可能会导致误差。
print(6.5 - 5.6)
print(6-2)
num=6
print(-num)
print(--num)
print(-(-num))
print({1,2,3} - {3,4,5})
print({3,4,5} - {1,2,3})
*运算符
*运算符除了表示整数、浮点数、复数之间的算术乘法,还可以用于列表、元组、字符串这几个类型的对象与整数的乘法,表示序列的重复、生成新的列表、元组或字符串。
print(555*666)
print((3+4j) * (5+6j))
print('hello world'*3)
print([0]*5)
print((0,)*3)
/和//运算符
/和//运算符分别表示真除法和求整商,使用时要特别注意整除运算符(//)向下取整的特点。
print(17/4)
print(17//4)
%运算符
%运算符可以用于求余数运算,还可以用于字符串格式化。在计算余数时,表达式结果与%右侧的运算数符号一致。
print(365 % 2)
# 格式化为字符
print('%c,%c'%(65,97))
**运算符
**运算符表示幂运算,使用时要注意该运算符具有右结合性,也就是说,如果有两个连续的 * *运算符,那么先计算右边的再计算左边的,除非使用圆括号明确修改表达式的计算顺序。
# 2的4次方
print(2**4)
print(3**3**3)
print(3**(3**3))
# 使用圆括号修改计算顺序
print((3**3)**3)
# 计算4的平方根
print(4**0.5)
# 对负数计算平方根得到复数
print((-1)**0.5)
关系运算符
python的关系运算符用于比较两个对象的值之间的大小,要求操作数之间可以比较大小。
当关系运算符作用于集合时,可以用于测试集合之间的包含关系。
当作用于列表、元组或字符串时,逐个比较对应位置上的元素,直到得出确定的结论为止。
关系运算符可以连续使用,当连续使用时具有惰性求值的特点,即当已经确定最终结果之后,不再进行后面的比较。
# 关系运算符优先级低于算术运算符
print(3+2 <7+8)
# 等价于3 < 5 and 5 > 2
print(3 < 5 > 2)
# 等价于 3==3 and 3<5
print( 3==3<5)
成员测试运算符
成员测试运算符in用于测试一个对象是否包含另一个对象,适用于列表、元组、字典、集合、字符串,以及range对象、zip对象、filter对象等包含多个元素的容器类对象。
print(60 in [70,60,50,40])
print('abc' in 'asdgdfgdsfgasbdffc')
print('3' in map(str,range(5)))
print(5 in range(5))
集合运算符
集合的交集、并集、对称差集运算分别使用==&、|、^==运算符来实现,而差集则使用减号运算符实现。
a={35,45,55,65,75}
b={65,75,85,95}
print(a | b)
print(a & b)
print(a-b)
print(b-a)
print(a ^ b)
逻辑运算符
逻辑运算符and、or、not常用来连接多个子表达式构成更加复杂的条件表达式,其优先级低于算术运算符、关系运算符、成员测试运算符和集合运算符。
and连接的两个式子都等价于true时,整个表达式的值才等价于true。or连接的两个式子至少有一个等价于true时,整个表达式的值才等价于true。对于and和or连接的表达式,最后计算的子表达式的值作为最终的计算结果。
在计算子表达式的值时,计算结果只要不是0、0.0、0j、None、False、空列表、空元组、空字符串、空字典、空集合、空range对象或其他空的容器对象,都被认为等价于true。
注意:and和or具有惰性求值或逻辑短路的特点,当连接多个表达式时只计算必须计算的值,并且最后计算的表达式的值作为整个表达式的值。
print(3 in range(5) and 'abc' in 'abcdefg')
print(3-3 or 5-2)
print(not 5)
print(not [])
总结
以上就是今天的学习内容啦~
如果有兴趣的话可以订阅专栏,持续更新呢~
咱们下期再见~