簡體   English   中英

遍歷枚舉返回括號中的字符串

[英]Iterating through enumerate returns strings in brackets

我有團隊列表,我想將它們實際放入數據庫中,但是在枚舉循環時遇到問題

所以這個清單

teams = [
        ('Team1', '91'),
        ('Team2', '89'),
        ('Team3', '87')
        ]

我首先嘗試了這個簡單的for循環,沒有問題。

for name, num in teams:
    print (name,num)

退貨

Team1 91
Team2 89
Team3 87 

然后我想添加一些格式並嘗試枚舉

for name, num in enumerate(teams, start=1):
    print("{}. {} Pts".format(name, num))  

退貨

1. ('Team1', '91') Pts
2. ('Team2', '89') Pts
3. ('Team3', '87') Pts          

為什么它返回時帶有方括號,引號等,而另一個不返回? 還是缺少什​​么? 順便說一下,我對python還是相當陌生的。

我的預期輸出是這個

1. Team1 91 Pts
2. Team2 89 Pts
3. Team3 87 Pts 

你可以試試:

for i, (name, num) in enumerate(teams, start=1):
    print("{}. {} {} Pts".format(i, name, num))  

枚舉返回索引(在這種情況下為1-3)和每個可迭代值(在這種情況下為team)。 從iterable返回的值將是元組。 您可以如上所述展開元組。

enumerate()函數向可迭代對象添加一個計數器,因此您的num仍然是數組中的每個項目(即元組)。

teams = [
    ('Team1', '91'),
    ('Team2', '89'),
    ('Team3', '87')
]

for index, item in enumerate(teams, start=1):
    print("{}. {} {} Pts".format(index, item[0], item[1]))  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM