[英]Combining lists into list of dictionaries
我有清單:
host = ['host1', 'host2', 'host3']
user = ['first_user', 'second_user', '-']
time = ['01/01', '02/02', '03/03']
我想要字典列表,其中每個字典如下所示:
{'host': 'host1',
'user': 'firsts_user',
'time': '01/01'}
你會怎么做?
坦率地說,這個問題還不夠清楚,但我根據我的理解實現了這一點;
>>> host = ['host1', 'host2', 'host3']
>>> user = ['first_user', 'second_user', '-']
>>> time = ['01/01', '02/02', '03/03']
>>>
>>> d = []
>>> for i in range(len(host) - 1):
... d.append({
... host[i]: host[i + 1],
... user[i]: user[i + 1],
... time[i]: time[i + 1]
... })
...
>>> print(d)
[{'host1': 'host2', 'first_user': 'second_user', '01/01': '02/02'}, {'host2': 'host3', 'second_user': '-', '02/02': '03/03'}]
對Cenk Bircanoglu答案的非常細微的修改,其中所有字典鍵都是固定的,而不是讓它們引用后續元素。 我想這是被問到的。
d = []
for count, el in enumerate(host):
d.append({
'host': el,
'user': user[count] if len(user) >= count+1 else None,
'time': time[count] if len(time) >= count+1 else None
})
print(d)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.