将dict中的字符映射到单词列表



我有一个char dict,我想用它的值替换我在某个单词中遇到的键的每个实例。

我的格言是这样的:

map_to_num = {
"w": "1",
"x": "2",
"z": "3" }

还有一个单词列表:

lst = ["water","xavier"]

我尝试过使用map()函数,但它一直返回None:

nw = list(map(map_to_num.get, lst))

您需要将map_to_num分别应用于lst中的每个字符串。此外,您还需要为dict.get提供一个默认值,以保留不在map_to_num:中的字符

>>> nw = ["".join(map_to_num.get(c, c) for c in word) for word in lst]
>>> nw
['1ater', '2avier']

这可能有助于您实现我们通过简单索引和字符串连接实现的目标:

>>> lst = ['water','xavier']
>>> list(map(lambda x: map_to_num.get(x[0])+x[1:],lst))
['1ater', '2avier']

最新更新