这个问题在这里已有答案:
我遇到过这样的代码:
s1 = "mit u rock"
s2 = "i rule mit"
if len(s1) == len(s2):
for char1 in s1:
for char2 in s2:
if char1 == char2:
print("common letter")
break
我注意到之前没有像char1
或char2
这样的变量的定义,所以这是如何工作的?我认为它可能是Python理解的一些“变量关键字”。如果是这样,你能告诉我它叫什么,还有像这样的其他常见变量?
for循环的作用是循环s1
。对于每次迭代,它将可迭代容器s1
的元素分配给变量char1
。
因此,在循环for char1 in s1
的第一次迭代中,char1
将在第二个迭代字符串值'm'
上具有字符串值'i'
。
请注意,即使在循环执行完毕后,char1
仍将分配一个值(最后一次迭代意味着它将具有值'k'
)。
你的迭代不必是一个字符串,它可以是定义__iter__
和__next__
方法的任何对象。因此,一些示例是列表[1,2,3]
或函数调用range(5)
返回的生成器。