我有一个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']