一、简单字典的书写
字典实际上就类似于Java中的treeMap集合,就是一个个键——值对所组成一组数据 。
1、书写格式
代码:
jacke_chen = {'age':45,'job':'alibaba','hobby':'brag'}
print(jacke_chen['age'])
print(jacke_chen['job'])
print(jacke_chen['hobby'])
结果:
45
alibaba
brag
注意:列表是用:[ ] ,元组是用:( ) , 字典是用:{ },但是他们单个元素的引用都是使用 [ ],
唯一不同的就是方括号里面的index_id的不同而已。
2、如何添加键——值对
代码:
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, 'x_position': 0, 'y_position': 25}
字典中添加键值对的方式不同于列表中添加元素的方式,列表中添加元素的格式是:cars.append()
3、键——值对的修改
代码:alien_0 = {'color': 'green'}
print("The alien is " + alien_0['color'] + ".")
alien_0['color'] = 'yellow'
print("The alien is now " + alien_0['color'] + ".")
结果:
The alien is green.
The alien is now yellow.
4、删除键— 值对
del alien_0['points']
print(alien_0)
结果:{'color': 'green'}
二、字典其他用法
1、遍历字典
字典可用于以各种方式存储信息,因此有多种遍历字典的方式:可遍历字典的所有键—值对、键或值。
1.1、遍历所有键——值对
代码:
user_0 = {
'username': 'efermi',
'first': 'enrico',
'last': 'fermi',
}
for key, value in user_0.items():
print("\nKey: " + key)
print("Value: " + value)
结果:
Key:username
Value:efermi
Key:first
Value:enrico
Key:last
Value:fermi
注意:①即便遍历字典时,键—值对的返回顺序也与存储顺序不同。 Python不关心键—值对的存
储顺序,而只跟踪键和值之间的关联关系。
② 注意items()方法的使用。
③for循环中,key 和value都可以用其他的单词替代,并不影响结果的输出,但一定要记住,
在遍历键值对时,前面是键(key)后面是值(value)。
1.2、遍历所有键
for name in favorite_languages.keys():
print(name.title())
注意:①keys()方法的使用。②遍历字典时,会默认遍历所有的键,因此,如果将上述代码中的
for name in favorite_languages.keys():替换为for name in favorite_languages:,输出将不变 。
1.3、按顺序遍历所有键(sorted()方法的使用)
for name in sorted(favorite_languages.keys()):
print(name.title() )
1.4、遍历字典中所有的值(注意,此处输出同样是乱序的)
favorite_languages = {
'jen': 'python',
'sarah': 'c',
'edward': 'ruby',
'phil': 'python',
}
for language in favorite_languages.values():
print(language.title())
结果:
Python
C
Python
Ruby
遍历字典中所有非重复的值(set()方法的使用)
for language in set(favorite_languages.values()):
print(language.title())