【发布时间】:2020-07-31 19:01:54
【问题描述】:
w= int(input('enter a num:'))
even= []
for x in range (0, 999999999999999999999999999999999999999999999999, 2):
even.append(x)
if w in even:
print ('the num is even')
break
else:
print ('the num is odd')
【问题讨论】:
-
该循环将需要很长时间才能执行并生成一个非常大的列表。你最好只写
even = range(0, 999999999999999999999999999999999999999999999999, 2),它会立即生效,你可以立即检查w in even -
注意:您可以通过测试最低有效位是否为 1(仅限整数)来测试数字是否为奇数而无需数学运算符。
-
我很高兴为自己设定挑战。为此,您认为“数学运算符”到底是什么?我想
+、-、*、/和**不在讨论范围内。您似乎在尝试不使用==。位运算符呢?还有其他人吗? -
即使没有位运算符,将数字转换为字符串并测试最后一个字符是否在“13579”中会更简单。
标签: python python-3.x for-loop if-statement