【发布时间】:2023-01-18 16:30:56
【问题描述】:
player_stat =[
('Harry Kane', '34', '19'),
('Player E', '35', '20'),
('Lionel Messi', '34', '14'),
('Player F', '35', '11'),
('Player A', '35', '17'),
('Player B', '35', '15'),
('Kylian Mbappe', '35', '18'),
('Player C', '35', '18'),
('Erling Haaland','35','21'),
('Player D', '35', '19'),
]
market_value = [
('Erling Haaland','138M'),
('Harry Kane', '120M'),
('Lionel Messi', '118.7M'),
('Kylian Mbappe', '115M'),
('Player A', '107M'),
('Player B', '108M'),
('Player E', '100M'),
('Player F', '98M'),
]
我想循环遍历这些元组,基本上如果名称相等,我想将市场价值添加到玩家统计数据中。 (选手C、D无数据)
我试过了:
for i in range(len(player_stat)):
for j in range(len(market_value)):
if(player_stat[i][0]==market_value[j][0]):
player_stat[i] = player_stat[i] + (str(market_value[j][1]),)
break
else:
player_stat[i] = player_stat[i] + ('undef',)
希望最终结果是:
player_stat =[
('Harry Kane', '34', '19', '120M'),
('Player E', '35', '20', '100M'),
('Lionel Messi', '34', '14', '118.7M'),
('Player F', '35', '11', '98M'),
('Player A', '35', '17', '107M'),
('Player B', '35', '15', '108M'),
('Kylian Mbappe', '35', '18', '115M'),
('Player C', '35', '18', 'unknown'),
('Erling Haaland','35','21', '138M'),
('Player D', '35', '19', 'unknown),
]
【问题讨论】:
-
您好,您遇到问题是因为您使用了错误的数据结构。两个变量都需要是字典,而不是元组列表。