在python中的字典中列出,键中的列表元素的组合

时间:2015-08-02 18:59:46

标签: python list dictionary

我是python编程的新手,我有这个列表:

['NAME surname', 'email', 'Type', 'NAME surname', 'email', 'type',and so on..]

我可以在一个字典键中拆分列表的每个树元素吗?

例如:

{'Name surname1':['Name Surname1','email1','type1'],'Name surname2':[name2,email2,type2 and so on]}

我需要这个,因为我想指定一个Key并获取密钥的值,在这种情况下是名称email等等。 我已经填好了一个大清单。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:4)

是。您可以创建一个包含列表解析的字典:

{namelist[i] : namelist[i : i + 3] for i in xrange(0, len(namelist), 3)}

请注意,这仅适用于您的列表始终重复名称,电子邮件,类型且仅当所有名称都是唯一的时。

答案 1 :(得分:1)

是的,你可以。这是一个例子:

>>> d = dict()
>>> d["A"] = ["name","email"]
>>> d["B"] = ["tom","tom@gmail.com"]
>>> print(d)
{'B': ['tom', 'tom@gmail.com'], 'A': ['name', 'email']}

您也可以访问每个键的单个列表:

>>> print(d["A"])
['name', 'email']


以下是您想要的更多内容:

>>> d= dict()
>>> d["Name Surname 1"] = ["Name Surname 1", "email", "type1"]
>>> d["Name Surname 2"] = ["Name Surname 2", "email", "type2"]
>>> d["Name Surname 3"] = ["Name Surname 3", "email", "type3"]
>>> for key in d:
...     print(key)
...     for list_item in d[key]:
...         print("\t%s"%list_item)
... 
Name Surname 3
    Name Surname 3
    email
    type3
Name Surname 1
    Name Surname 1
    email
    type1
Name Surname 2
    Name Surname 2
    email
    type2