Python 使用包含下划线的字典替换列表值
我正试图用一本字典把用户名替换成他们的真名。例如,如果输入为“bob2000”,字典将把列表值替换为“Bob Doe” 但是,我遇到了一个带有下划线的用户名问题。该值不会更改 比如说,Python 使用包含下划线的字典替换列表值,python,list,dictionary,list-comprehension,Python,List,Dictionary,List Comprehension,我正试图用一本字典把用户名替换成他们的真名。例如,如果输入为“bob2000”,字典将把列表值替换为“Bob Doe” 但是,我遇到了一个带有下划线的用户名问题。该值不会更改 比如说, my_dict = { 'bob2000':'Bob Doe', 'bob_2001':'Bob Smith'} 返回: my_list = ['Bob Doe', 'bob_2001'] 值只是被跳过了。我的代码如下所示 def name_replace(my_list): da
my_dict = {
'bob2000':'Bob Doe',
'bob_2001':'Bob Smith'}
返回:
my_list = ['Bob Doe', 'bob_2001']
值只是被跳过了。我的代码如下所示
def name_replace(my_list):
data = [my_dict.get(item,item) for item in my_list]
return (data)
从函数
name\u replace
returndata
notmy\u list
my_dict = {
'bob2000':'Bob Doe',
'bob_2001':'Bob Smith'}
my_list = ['Bob Doe', 'bob_2001']
def name_replace(my_list):
data = [my_dict.get(item,item) for item in my_list]
return (data)
print(name_replace(my_list))
输出:['Bob Doe','Bob Smith']
你的代码有些毫无意义。你可以澄清你想要什么,因为你的代码的意图不清楚。你需要返回
数据
而不是我的列表
。当我的代码返回数据时,我意外地将我的返回作为我的列表。这个问题仍然存在,只适用于带下划线的名称。为什么会发生这种情况?给出示例输入和预期输出以及您得到的结果