5 Python编程:从入门到实践---字典

访问字典中的值

alien_0 = {'color': 'green'}
print(alien_0['color'])
返回内容
green

添加键-值对

alien_0 = {'color': 'green', 'points': 5}
print(alien_0)
alien_0['x_position'] = 0
alien_0['y_position'] = 25
print(alien_0)

结果
{'color': 'green', 'points': 5}
{'color': 'green', 'points': 5, 'y_position': 25, 'x_position': 0}

删除键-值对

alien_0 = {'color': 'green', 'points': 5}
print(alien_0)
del alien_0['points']
print(alien_0)
结果
{'color': 'green', 'points': 5}
{'color': 'green'}

删除的键-值对将永远消失了

 遍历字典,使用items()方法

alien = {'first_name':'liu','last_name':'weidong','age':18,'city':'beijing'}

for k,v in alien.items():
    print("\n"+k)
    print(v)

遍历字典中的所有键,使用keys()方法

alien = {'first_name':'liu','last_name':'weidong','age':18,'city':'beijing'}

for name in alien.keys():
    print(name)

  

按顺序遍历字典中的所有键,sorted()方法,先对字典键进行排序

alien = {'first_name':'liu','last_name':'weidong','age':18,'city':'beijing'}

for name in sorted(alien.keys()):
    print(name)

  

遍历字典中的所有值,values()

alien = {'first_name':'liu','last_name':'weidong','age':18,'city':'beijing','live':'beijing'}

for name in set(alien.values()):
    print(name)

结果
weidong
liu
18
beijing

  这种做法提取字典中所有的值,而没有考虑是否重复。涉及的值很少时,这也许不是问题,但如果被调查者很多,最终的列表可能包含大量的重复项。为剔除重复项,可使用集合(set)。

字典列表

#创建空列表
aliens = [] #生产30个相同的字典列表 for i in range(30): new_aliens = {'color': 'green', 'points': 5, 'speed': 'slow'} aliens.append(new_aliens) #打印前5个列表 for i in aliens[:5]: print(i) #统计列表长度 print("Total number of aliens {}".format(len(aliens))) #判断如果前三个color是green,将字典改为yellow for i in aliens[:3]: if i['color'] == 'green': i['color'] = 'yellow' i['speed'] = 'medium' i['points'] = 10 elif i['color'] == 'yellow': i['color'] = 'red' i['speed'] = 'fast' i['points'] = '15' for i in aliens[:5]: print(i)

 

在字典中存储列表

favorite_languages = {
'jen': ['python', 'ruby'],
'sarah': ['c'],
'edward': ['ruby', 'go'],
'phil': ['python', 'haskell'],
}


for name,languages in favorite_languages.items():
    print("\n" + name)
    for language in languages:
        print("\t" + language.title())

  

在字典中存储字典

users = {
'aeinstein': {
'first': 'albert',
'last': 'einstein',
'location': 'princeton',
},
'mcurie': {
'first': 'marie',
'last': 'curie',
'location': 'paris',
},
}


for user,name_info in users.items():
    print("User is {}".format(user))
    print("fullname is {} {}".format(name_info['first'].title(),name_info['last']))
    print("location is {}".format(name_info['location']))

  

 

 

 

posted @ 2022-06-10 15:15  摩天居士-谢烟客  阅读(35)  评论(0编辑  收藏  举报