嘿我有3个列表,我用作键,其余是值
keys = ['key1', 'key2', 'key3', 'key4']
list1 = ['network', 'pingworker', 'vpc', 'solution', 'ops', '1', '2', '3']
list2 = ['vlan', 'nms', 'jds', 'zabbix', '4', '5', '6', 'pqr', '8', '2', '2', '3sd']
abc = {}
abc = dict(zip(keys[0], list1))
print(abc)
我得到的输出是:
{'k': 'network', 'y': 'vpc', 'e': 'pingworker', '1': 'solution'}
我需要的是:
{'key1': 'network', 'pingworker', 'vpc', 'solution', 'ops', '1', '2', '3'}
同样地:
{'key2': 'vlan', 'nms', 'jds', 'zabbix', '4', '5', '6', 'pqr', '8', '2', '2', '3sd'}
答案 0 :(得分:2)
试试这个:
abc = dict(zip(keys, [list1,list2]))
print(abc)
输出:
{'key2': ['vlan', 'nms', 'jds', 'zabbix', '4', '5', '6', 'pqr', '8', '2', '2', '3sd'], 'key1': ['network', 'pingworker', 'vpc', 'solution', 'ops', '1', '2', '3']}
我想你想要{'key1':[],'key2':[]}
答案 1 :(得分:1)
你甚至可以这样做:
keys = ['key1', 'key2', 'key3', 'key4']
list1 = ['network', 'pingworker', 'vpc', 'solution', 'ops', '1', '2', '3']
list2 = ['vlan', 'nms', 'jds', 'zabbix', '4', '5', '6', 'pqr', '8', '2', '2', '3sd']
abc = {}
abc[keys[0]] = list1
abc[keys[1]] = list2
print(abc)
答案 2 :(得分:0)
如何为单个密钥设置多个值?
{'key1': 'network', 'pingworker', 'vpc', 'solution', 'ops', '1', '2', '3'}
不是有效的python字典。
如果你想要这样的话:{'key1': ['network', 'pingworker', 'vpc', 'solution', 'ops', '1', '2', '3']}
你可以简单地写一下:
abc = {keys[0]: list1, keys[1]: list2}
或
abc = {}
abc[keys[0]] = list1
abc[keys[1]] = list2
答案 3 :(得分:-1)
你可以做这样的事情.-使用dictionary.setdefault(某事[i],[])。append(value)
其中某些内容[i]是您的key1值,而value是数组中的值列表。
为列表1中的键和范围中的值(len(list1))执行嵌套for循环。然后,当您没有到达列表的末尾时,请附加所有值。