有两个不同大小的列表:
numbers=[1,2,3,4,5]
cities=['LA','NY','SF']
我需要得到这个:
result={1:'LA', 2:'NY', 3:'SF'}
我想用:
result={number:cities[numbers.index(number)] for number in numbers if numbers.index(number)<len(cities)}
但是这个班轮有点长。我想知道是否有其他方法可以达到同样的目标。你知道吗
对使用zip
提出了多种建议:
dict(zip(cities, numbers))
虽然这绝对是一个比我使用的列表理解更简单的语法,但我想知道哪个执行起来更快?你知道吗
;)
我怀疑这是重复虽然-搜索之前,你张贴
使用
zip
,它只会压缩到最短序列的末尾最简单的可能是
dict(zip(numbers,cities))
一旦任何列表结束,zip就会停止,这就是您想要的。你知道吗相关问题 更多 >
编程相关推荐