第七课.常用操作符

基本操作符

加减乘除就不说了,浅谈一些值得注意的地方

 

首先可以看到a+=1(a=a+1)这些基本的简写,这些c语言支持的python一样支持,但是除法就不一样了,d/=8 按照c语言的思路,10/8是整数之间的除法,结果也应该是整数(地板(float)除法),但是python更人性化,可以直接得出小数结果。如果偏要用地板除法,那就用//来表示,例如:

但是和C语言不同的是,浮点型除以整形或者整形除以浮点型也会得到最接近商的整数

**是幂运算符,直接看图

3的2次幂等于9

扫描二维码关注公众号,回复: 5000325 查看本文章

2的10次幂等于1024

 

 

运算法则:先乘除,后加减

特殊:幂运算操作符比其左侧的一元操作符优先级高,比其右侧的一元操作符优先级低

可以看到第一个是先算幂运算符,第二个先结合负号,印证了 幂运算符,比左侧运算符优先级高,比右侧运算符优先级低 这句话

 

 

逻辑操作符

And和or前面课程已经介绍过了,not是取反,(0和非零分别代表False和True)

下面两个式子是等价的

3<4<5在python中会被解释为(3<4)and(4<5)

 

总结(注意:逻辑运算符的优先级not>and>or)

 

请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
如果你的回答是 0,那么恭喜你你中招了!
答案是:4
not or and 的优先级是不同的:not > and > or
我们按照优先级给它们加上括号:(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
== 0 or 0 or 4 or 6 or 9
== 4
为啥是 4?
大家还记得“短路逻辑”吗?3 and 4 == 4,而 3 or 4 == 3。
所以答案是:4
(忘了就看前面的博客)

 

现在的 Python 可以计算很大很大的数据,但是......真正的大数据计算可是要靠刚刚的硬件滴,不妨写一个小代码,让你的计算机为之崩溃?

 

print(2 ** 2 ** 32)

# 一般很多机子都会在一会儿之后:Memory Overflow,内存不够用。

# 设计到幂操作,结果都是惊人滴。

 

猜你喜欢

转载自blog.csdn.net/qq_41917908/article/details/84035416