[('阿富汗', 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)