-
概述
Python字典可以将相关信息关联起来,使用字典可以更准确地为各种真实物体建模。
本节主要包括字典的创建、访问、修改和遍历等内容。 -
创建字典
字典采用花括号{},下标则是方括号[],字典采用键-值对(key-value)组成,之间用逗号隔开,键-值对的数量不受限制。
alien_0={'color':'green','points':5}
print(alien_0['color'])
print(alien_0['points'])
- 添加/修改/删除
#creat empty dict
alien_0={}
#add
alien_0['color']='green'
alien_0['points']=5
alien_0['x_position']=0
alien_0['y_position']=25
print(alien_0)
alien_0['color']='red'
print(alien_0)
#del
del alien_0['color']
print(alien_0)

字典在定义完成后,可以通过键值对的方式进行添加。Python不管添加的顺序,只关心key与value之间的关联关系。
- 遍历
favorite_languages={
'jen':'python',
'sarah':'C++',
'phil':'ruby',
'edward':'python'
}
#key-value
for name,language in favorite_languages.items():
print(name.title() +"'s favorite language is "+language.title()+".")
#key
for name in favorite_languages.keys():
print(name.title())
#value
for language in favorite_languages.values():
print(language.title())

遍历字典所有的键值对、键或值
采用方法set()可以剔除重复项
for language in set(favorite_languages.values()):
print(language.title())
- 嵌套
有时候可以将字典存储在列表中,或将列表存储在字典中。
列表作为字典的元素
##list as elements of Dict
favorite_languages={
'jen':['python','ruby'],
'sarch':['C'],
'edward':['ruby','go'],
'phil':['python','haskell'],
}
for name,languages in favorite_languages.items():
print("\n"+name.title()+"'s favorite languages are:")
for language in languages:
print("\t"+language.title())

字典作为字典的元素
##dict as elements of Dict
users={
'aeinstein':{
'first':'albert',
'last':'einstein',
'location':'princeton',
},
'mcuie':{
'first':'marie',
'last':'curie',
'location':'paris',
},
}
for username,user_info in users.items():
print("Username: "+username)
full_name=user_info['first']+" "+user_info['last']
location=user_info['location']
print("\tFull name: "+full_name.title())
print("\tLocation: "+location.title())

在嵌套结构中,尽量让元素的结构是相同的,以便for循环处理,当然也可以通过在for循环体设计不同的处理程序。
就酱!
本文深入讲解了Python字典的创建、访问、修改和遍历等核心操作,包括键值对的添加、修改与删除,以及如何遍历字典的所有键值对、键或值,并介绍了字典的嵌套应用。
534

被折叠的 条评论
为什么被折叠?



