为什么这个代码。。。
alist = ['cat','dog','cow']
for item in alist:
print alist
输出
['cat', 'dog', 'cow']
['cat', 'dog', 'cow']
['cat', 'dog', 'cow']
将print
从alist
更改为item
时输出:
cat
dog
cow
我知道当打印列表时,它会打印列表中元素的次数,但我想我只是不明白为什么会有不同。
如果有人能向我解释其中的区别或为我指明正确的方向,我将不胜感激。
- 你有一个清单,里面有猫、狗和牛
- 然后你说:对于我列表中的每一件事,打印我的列表
- 你的清单上有三样东西(猫、狗和牛),所以你的清单打印3次
-
当您将语句切换为
print item
而不是print alist
你对我打印的清单中的每一件事都说那件事-所以你列表中的每件事都会被打印出来,即
cat, dog, cow.
当您迭代列表时,使用类似的for循环
for item in alist:
Python,从alist
中获取每个元素,并使item
在每次迭代中引用该元素。这就是为什么在打印item
时一次获得一个元素的原因。
我个人理解for循环逻辑的方式是:"每次读取列表中的一个项目,程序都会打印/执行一些操作
项目列表保持不变。
第一次你只是为你的列表中的每个条目位置(索引)重复列表
第二次阅读/阅读列表中的每个项目时,列表中的每个项一次
for each_item in my list:
#do something