我想知道以下内容在每次迭代中的效果如何,我已经检查了互联网,但找不到确切的答案
还有是否还有更有效的方法来实现这一目标。
for i in range(0, len(c)):
if i & True:
pass
答案 0 :(得分:3)
True
在Python中的整数值为1
,因此当循环将i
的整数0
迭代为c
的长度并执行时按位-并在i
和1
上,它有效地检查i
是否为奇数,如果是,则执行pass
语句(我相信其中存在更多代码您的真实代码)。
作为一种更有效的方法,您可以使用{{的c
参数,而不是生成介于0和step
长度之间的所有数字并滤除偶数, 1}}函数首先生成所需的奇数序列:
range
答案 1 :(得分:1)
i & True
的偶数为0
,奇数为1
。
for i in range(0, 5):
print(i, i & True)
产量:
(0, 0)
(1, 1)
(2, 0)
(3, 1)
(4, 0)