例如,我正在迭代字典mydict
,如下所示:
mydict = {"Name" : "Vincent Vega",
"Profession" : "Gangster",
"Age" : "42"}
for k in mydict:
print k, mydict[k]
现在,k
只是一个我甚至没有声明的循环变量。编译器如何知道k
,我的意思是字典的键?
答案 0 :(得分:6)
答案 1 :(得分:1)
for
循环在循环的序列上调用iter()
,并对结果使用next()
次调用。
不同的对象可以返回具有不同行为的不同迭代器,这就是为什么你会一次看到它迭代字典的键,另一次是数组的索引,这取决于iterable。