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)
我有一个像这样的初始化字典:
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)