我有以下问题:
考虑给定的清单:
list = ['12','8','3']
为什么print('8' in list)
会返回 True
而
for i in range(5):
if '8' in list == True:
(code)
在if循环中不执行我的代码? 有人可以解释我为什么,我怎么能让这个工作?
也许这个问题已被提出,但我没有看到我应该搜索哪些关键字。 感谢您的帮助: - )
答案 0 :(得分:2)
您不应将变量命名为str
或list
或int
,因为它们可能会与Python的内置关键字冲突。
您的支票已if '8' in list
,但这会测试 字符串 8是否在列表中,而不是数字。删掉撇号。
您不必将if 8 in list
置于循环中,它会为您进行循环和测试。
要检查列表中是否有数字,可以使用python内置的in
关键字,编写自己的代码进行检查。
请注意,不要使用list
之类的关键字,因此我在这些示例中将名称更改为myList
。
in
if 8 in myList: # Note that you don't have to say == True
print('8 is in the list!')
for i in myList)
for i in myList:
if i == 8:
print('8 is in the list!')**
for i in range(len(myList))
for i in range(len(myList)):
if myList[i] == 8:
print('8 is in the list!')