编辑:我在移动设备上,格式不正确。这是我第一次遇到堆栈溢出
我是编程的新手,甚至不知道该如何表达和搜索我想回答的问题
运行此命令时:
Magicians = ['kory', 'bob', 'jamie', 'cody']
for Magicians in Magicians:
print(Magicians)
for Magicians in Magicians:
print(Magicians)
我明白了: 高丽 鲍勃 杰米 科迪 C Ø d y
有人可以帮我理解吗?我正在阅读Eric Matthes撰写的python速成课程,它没有涵盖任何内容,我也无法弄清
谢谢
答案 0 :(得分:1)
您的第一个循环表示将Magicians
拆分为多个项目,因此第一个迭代将是“ kory”。您的下一个循环(由于未嵌套,仅对最后一个值“ cody”运行)被告知将其进一步拆分为多个项。它通过采用字符串“ cody”并将其拆分为字母来实现。然后打印每个字母!
您可以尝试以下操作:
Magicians = ['kory', 'bob', 'jamie', 'cody']
for Magician in Magicians:
print(Magician)
for letter in Magician:
print(letter)
这将打印“ kory k o r y bob b o b jamie j a me e cody c o d y”,我认为这实质上是您要尝试做的事。
答案 1 :(得分:0)
它打印c o d y
是因为在最后一个循环中,您使用了变量Magicians
作为迭代变量。因此,第一个循环之后的Magicians
等于字符串"cody"
。在python中,您可以将字符串作为列表进行迭代,这就是为什么在第二个循环中,您会得到"cody"
字母的原因。
Magicians = ['kory', 'bob', 'jamie', 'cody']
for Magicians in Magicians:
print(Magicians)
# Prints: kory bob jaime cody
#Now Magicians = 'cody'
for Magicians in Magicians:
print(Magicians)
#Prints: c o d y
答案 2 :(得分:0)
简单的列表理解可以帮助您了解循环的工作原理
这将吐出列表Magicians
Magicians = ['kory', 'bob', 'jamie', 'cody']
[[char for char in magician] for magician in Magicians]
输出:
[['k', 'o', 'r', 'y'],
['b', 'o', 'b'],
['j', 'a', 'm', 'i', 'e'],
['c', 'o', 'd', 'y']]