Python :使用新列表更新初始化字典作为每个键的值

Python : update an initialized dictionary with new lists as value for each key

我有一个像这样的初始化字典:

nemas = {'PERSON' : '', 'ORGANIZATION':'' , 'LOCATION': ''}

和三个姓名列表:

 person_names =    [u'Albert Einstein', u'Hermann Einstein', u'Pauline Koch', u'Einstein', u'Jakob']
organization_names = [u'Elektrotechnische Fabrik J. Einstein & Cie']
location_names =  [u'Ulm', u'Kingdom of Britain', u'Munich']

我打算更新字典并得到:

names = { 'PERSON' : [u'Albert Einstein', u'Hermann Einstein', u'Pauline Koch', u'Einstein', u'Jakob'], 
'ORGANIZATION': [u'Elektrotechnische Fabrik J. Einstein & Cie'], 
'LOCATION': [u'Ulm', u'Kingdom of Britain', u'Munich']  }

我试过了:

name_dict = {"PERSON":dict(person_names), "ORGANIZATION": dict(organization_names), "LOCATION":dict(locatoin_names)}
print(names.update(name_dict))

但是没用。有什么 Pythonic 的方法可以解决这个问题吗?

假设我们忽略了您的第一行:

nemas = {'PERSON' : , 'ORGANIZATION': , 'LOCATION': }

你根本做不到。但是你可以做

nemas = {'PERSON' : None, 'ORGANIZATION': None, 'LOCATION': None}

那么最后你想要的是一个列表字典,但你试图制作一个字典的字典。试试这个:

name_dict = {"PERSON":person_names, "ORGANIZATION": organization_names, "LOCATION":location_names}

请注意我修正了一些拼写错误。 然后你可以通过

得到预期的输出
print(name_dict)