【发布时间】:2020-06-14 11:33:14
【问题描述】:
我有如下声明:
for i, char in enumerate(list(range(100))):
现在我只想打印值,其中 char 等于 50。
我试过下面的想法,但不明白为什么不正确:
for i, char in enumerate(list(range(100))):
char == 50
print(i)
解决办法是我必须放一个“if”语句,我已经理解了它背后的逻辑但也想问,为什么我的方法无效。
感谢您提前提供帮助。
【问题讨论】:
-
那么,预期的结果是什么...
50或其他? -
您的语句
char == 50计算出True或False值,但随后不会将其用于任何事情。如果您想将此作为条件的基础,那么您将需要一个if语句。 -
其他一些cmets:(a)变量名
char暗示它包含一个字符但实际上包含一个整数;尽量避免误导变量名,因为它们会使代码更难调试; (b) 您可以直接使用enumerate(range(100));您不需要将range返回的对象转换为列表。
标签: python list if-statement range enumerate