繁体   English   中英

如何将普通的“打印”与“打印”分开?

[英]How do I separate a normal “print” from a “for print”?

只是要直截了当,但是当我在写完“for print”之后写一个普通的“print”时,我只得到最后一个单词的字母。 这是我写的

print("Animal list:")
animallist = ["cows", "sheep", "pigs", "horses", "chickens", "goats", "ducks"]
for animallist in animallist:
  print (animallist)

当我写这个的时候

print("Animal list:")
animallist = ["cows", "sheep", "pigs", "horses", "chickens", "goats", "ducks"]
for animallist in animallist:
  print (animallist)
print(animallist[4])

它只是显示列表和最后一个单词的最后一个字母。

所以我想要做的是一个普通的列表,底部也有“鸡”。 我不擅长这个,所以我有点无能为力,希望得到一些帮助,我正在寻找的东西看起来像

Animal list:
cows
sheep
pigs
horses
chickens
goats
ducks

chickens

理解列表和列表中的项目:

print("Animal list:")
animallist = ["cows", "sheep", "pigs", "horses", "chickens", "goats", "ducks"]
for animal in animallist:
  print (animal)
print(animallist[4])

当python运行for循环时,它将变量animallist重新分配给animallist的每个项目animallist (class 'list') (“ animallist (class 'list') ”、“sheep”、“pigs”等属于class 'str' ),所以变量animallist已成为class 'str' 当 for 循环迭代到列表的最后一项,即"ducks" ,它将animallist分配给值"ducks" ,因此当它运行print(animallist[4]) ,它将打印该列表的第 4 个索引字符串"ducks" ,即s

您可以在此处看到您的animallist变量的类型已更改:

animallist = ["cows", "sheep", "pigs", "horses", "chickens", "goats", "ducks"]
print(type(animallist))

for animallist in animallist:
    pass

print(type(animallist))

输出:

<class 'list'>
<class 'str'>

所以你不应该对循环函数和迭代中的变量使用相同的名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM