[('安提瓜', 4.04), ('圣卢西亚', 6.9), ('波兰', 4.09), ('墨西哥', 3.72), ('加拿大', 7.79), ('俄罗斯', 6.0), ('韩国', 8.4), ('西班牙', 5.69)]
如何输入单一国家的名字输出对应元组
比如输入 加拿大
输出 加拿大 运费 7.79
l = [('安提瓜', 4.04), ('圣卢西亚', 6.9), ('波兰', 4.09), ('墨西哥', 3.72), ('加拿大', 7.79), ('俄罗斯', 6.0), ('韩国', 8.4), ('西班牙', 5.69)]
s = input(">>>")
for i in l:
if i[0] == s:
print(f'{s} 运费 {i[1]}')
break
'''--result
>>>加拿大
加拿大 运费 7.79
'''
lst = [('安提瓜', 4.04), ('圣卢西亚', 6.9), ('波兰', 4.09), ('墨西哥', 3.72), ('加拿大', 7.79), ('俄罗斯', 6.0), ('韩国', 8.4), ('西班牙', 5.69)]
def rate(c):
for i in lst:
if c==i[0]:return i[1]
return -1
rate('加拿大')
7.79
rate('小日本')
-1 #返回-1,表示没找到对应
>>>
alist = [('安提瓜', 4.04), ('圣卢西亚', 6.9), ('波兰', 4.09), ('墨西哥', 3.72), ('加拿大', 7.79), ('俄罗斯', 6.0), ('韩国', 8.4), ('西班牙', 5.69)]
amap = {}
for a in alist:
amap[a[0]] = a[1]
name = input('请输入:')
print('%s 运费 %s' % (name, amap[name]))