Python操作符
算术操作符:
-
-
- / % ** //
- / % ** //
-
优先级问题
比较操作符 < > = <= >=
逻辑运算符 and or not
not True
False
总结
幂运算>正负号> 算术操作符> 比较操作符 > 逻辑运算符
课后题
Python 的 floor 除法现在使用 “//” 实现,那 3.0 // 2.0 您目测会显示什么内容呢?
解:1.0
-
a < b < c 事实上是等于?
解:a<b and b<c -
不使用 IDLE,你可以轻松说出 5 ** -2 的值吗?
解:0.04
幂运算操作符比其左侧的一元操作符优先级高,比其右侧的一元操作符优先级低 -
如何简单判断一个数是奇数还是偶数?
解:能被 2 整除为偶数,所以 x % 2 == 0 -
请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
解: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
3 and 4 == 4,而 3 or 4 == 3。 -
还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用什么方法可以“委曲求全”代替“%”的功能呢?
解:“if year/400 == int(year/400)”
动手题:
0.请写一个程序打印出 0~100 所有的奇数。
1.我们说过现在的 Python 可以计算很大很大的数据,但是…真正的大数据计算可是要靠刚刚的硬件滴,不妨写一个小代码,让你的计算机为之崩溃?
print(2 ** 2 ** 32)
#内存不够使用 memory overflow
- 题目:请编程求解该阶梯至少有多少阶?
爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。
解:
x = 7
i = 1
flag = 0
while i <= 100:
if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
flag = 1
else:
x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7
i += 1
if flag == 1:
print('阶梯数是:', x)
else:
print('在程序限定的范围内找不到答案!')