簡體   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