有没有办法检查一个列表中的偶数而不使用:if?偶数检查没有:如果
在这里我有什么,当我使用if:
import numbers
numbers = [ 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]
def even_list(numbers):
for i in range(len(numbers)):
if i % 2 == 0:
#while i !=(i/2):
print(i)
return i
numbers = even_list(numbers)
现在在逻辑上这是有意义的,但我不知道是否比其它任何其他方式。 正如你所看到的,我尝试在那里使用,并且程序在运行时保持循环1。 关于如何解决这个问题的任何想法?
好,'i'绝不能等于'I/2'。所以这就是它保持循环的原因。 – squiguy 2013-03-01 00:19:29
从技术上讲,除了'if'之外,没有其他办法,因为即使你使用列表理解,也会有一个if:'[x for x in numbers if x%2 == 0]',或者如果你使用过滤器,有一个条件,这不过是一个暗示,如果:'过滤器(lambda x:x%2 == 0,数字)' – 2013-03-01 00:19:37
为什么你不想使用if?我会检查出[这个问题](http://codereview.stackexchange.com/questions/8403/python-check-if-number-is-divisible-by-2-program) – xxmbabanexx 2013-03-01 00:20:08