如何避免for循环将字典值追加到列表中

问题描述 投票:0回答:1

我有这本字典:

Dict = {
    "a" : 1,
    "b" : 2,
    "c" : 3
}

以及这两个列表:

List1 = ["a","c"]
List2 = [0]

是否有比以下方式更有效的方法通过Dict将List1的对应值附加到List2? :

for e in List1:
    List2.append(Dict[e]) 

结果:

[0, 1, 3]
python list dictionary for-loop append
1个回答
3
投票

在运行时间方面可能没有任何效率,但是在编写代码方面却更有效率:

List2.extend(Dict[e] for e in List1)

[如果您对代码高尔夫感兴趣,

List2.extend(map(Dict.get, List1))
© www.soinside.com 2019 - 2024. All rights reserved.