尝试使用python通过字典的返回列表进行映射

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

我想做一些非常简单的事情,但我不知道为什么它不起作用

N = int(input())
numbers = list(input())
print(numbers)
def switch(x):
    return {
      '1': 2,
      '2': 5,
      '3': 5,
      '4': 4,
      '5': 5,
      '6': 6,
      '7': 3,
      '8': 7,
      '9': 6,
    }[x]

print(list(map(switch, numbers)))

我有上面的代码,我想要的是基于一个数字求和来自名为 switch 的函数的每个数字的所有结果

python list dictionary return
1个回答
1
投票

您想对所有数字求和吗? 在这种情况下,您可以使用

sum
功能:

...
print(sum(map(switch, numbers)))

您不需要将

map
结果转换为
list
,因为
sum
接受可迭代。

© www.soinside.com 2019 - 2024. All rights reserved.