遍历enumerate返回括号中的字符串

2021-12-08 05:19:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个团队列表,我想把他们放在一个数据库中,但我有问题循环枚举

这就是名单

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          

为什么它用括号,引号e.t.c.返回,而另一个不是?或者我遗漏了什么?顺便说一下,我对python还比较陌生。你知道吗

我期望的结果是

1. Team1 91 Pts
2. Team2 89 Pts
3. Team3 87 Pts 
2条回答
网友
1楼 ·

enumerate()函数为iterable添加了一个计数器,因此num仍然是数组中的每个项(即元组)。你知道吗

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

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

您可以尝试:

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

enumerate返回索引(本例中为1-3)和iterable的每个值(本例中为teams)。从iterable返回的值将是元组。可以如上所示展开元组。你知道吗

相关问题