大佬教程收集整理的这篇文章主要介绍了使用 for 循环将键和值添加到空字典,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前有 3 个列表和一个空字典:
Dict = {}
name = ['Bob','Amy','Jack']
gender = ['Male','Female','Male']
car = ['kia','ford','audi']
country = ['UK','US','Australia']
我可以使用 for 循环来创建字典条目吗?所以理想情况下我会得到:
Dict = {'Bob': {'gender':'Male','car':'kia','country':'UK'},'Amy': {'gender':'Female','car':'ford','country':'US'},'Jack': {'gender':'Male','car':'audi','country':'Australia'}}
您可以使用 zip
和 Dict comprehension
:
awk '
/^WORD1/ {
match($0,/[ ]0x[^ ]+/)
if (RLENGTH > -1)
print substr ($0,RSTART+1,RLENGTH)
}
' file
0xksjdflksjflksjf
0xksjdflksjflks
输出:
name = ['Bob','Amy','Jack']
gender = ['Male','Female','Male']
car = ['kia','ford','audi']
country = ['UK','US','Australia']
db = {name: Dict(zip(['gender','car','country'],rest))
for name,*rest
in zip(name,gender,car,country)
}
print(db)
解压后的样子:
{'Bob': {'gender': 'Male','car': 'kia','country': 'UK'},'Amy': {'gender': 'Female','car': 'ford','country': 'US'},'Jack': {'gender': 'Male','car': 'audi','country': 'Australia'}}
如果我们看到 for data in zip(name,country):
n,g,ca,co = data
db[n] = {
'gender' : g,'car' : ca,'country': co
}
返回的内容:
zip
现在,我们可以解包这些元组(参见iterable unpacking
:
>>> for data in zip(name,country):
print(data)
('Bob','Male','kia','UK')
('Amy','US')
('Jack','audi','Australia')
现在,让我们来看看如何通过调用 Dict
来制作 Dict:
>>> n,co = ('Bob','UK')
>>> n
'Bob'
>>> g
'Male'
>>> ca
'kia'
>>> co
'UK'
# Or we can take the name separately (as shown in Dict comprehension):
>>> name,*rest = ('Bob','UK')
>>> name
'Bob'
>>> rest
['Male','UK']
,
使用 zip
和 Dictionary comprehension:
dct = {n: {'gender': g,'car': k,'country': c}
for n,k,c in zip(name,country)}
作为旁注,避免使用 Python 中的内置名称命名变量,例如 Dict
(我使用的是 dct
,但更好的名称可能是 people
或者,甚至更好的是,您可以想到适合您实际用例的东西)。
以上是大佬教程为你收集整理的使用 for 循环将键和值添加到空字典全部内容,希望文章能够帮你解决使用 for 循环将键和值添加到空字典所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。