如何判断列表里元组的第二个值,如果不满足条件,则赋予一个新值并更新列表。

[('阿富汗', 2.72), ('阿尔巴尼亚', 2.5), ('阿尔及利亚', 3.07), ('安道尔', 6.05)]
判断阿富汗后面的2.27如果<5,则把5赋值2给2.27,更新列表。

题目需求不太明了, 不知道是不是这个意思

lst = [('阿富汗', 2.72), ('阿尔巴尼亚', 2.27), ('阿尔及利亚', 3.07), ('安道尔', 6.05)]
for i in range(len(lst)):
    item = lst[i]
    if item[0] == '阿富汗'and item[1]<5:
        lst[i] = (item[0], 5)
        break

print(lst)

到底是阿富汗还是阿尔巴尼亚

lst = [('阿富汗', 2.72), ('阿尔巴尼亚', 2.27), ('阿尔及利亚', 3.07), ('安道尔', 6.05)]

for i,t in enumerate(lst):
    if t[1]<5:
        lst[i] = t[0],5 #5是要赋的值,题目中没写明白怎么赋值

print(lst)
l1 = [('阿富汗', 2.72), ('阿尔巴尼亚', 2.27), ('阿尔及利亚', 3.07), ('安道尔', 6.05)]
if l1[0][1] < 5:
    a = list(l1[0])
    a[-1] = 5
    l1[0] = tuple(a)
print(l1)