python3.3:基础语法:字典
1.字典简介:
字典是一系列键--值对,每一个键与一个值相对应,可根据键查询对应的值,python内任何对象的比如数字、字符串、字典、列表等都可作为与键对应的值。
Zhangyuan1 = {'Age': 24}
Zhangyuan2 = {'Age': 24, 'Sexual': 'female'}
Zhangyuan3 = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
2.字典的简单操作:
(1)根据键获取相关联的值:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
# 查找对应年龄值
age = Zhangyuan['Age']
print(str(age))
# 查找对应性别值
sexual = Zhangyuan['Sexual']
print(sexual)
(2)向字典添加键值对:
# 创建空字典
Zhangyuan = {}
# 添加年龄键值对
Zhangyuan['Age'] = 24
print(Zhangyuan.items())
# 添加性别键值对
Zhangyuan['Sexual'] = 'female'
print(Zhangyuan.items())
# 添加学历键值对
Zhangyuan['Aducational Background'] = 'master'
print(Zhangyuan.items())
(3)修改字典中某键对应的值:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
print(Zhangyuan['Age'])
# 将年龄对应的值修改为25
Zhangyuan['Age'] = 25
print(Zhangyuan['Age'])
(4)删除键值对,删除的键值对永久消失:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
print(Zhangyuan.items())
# 删除年龄键值对
del Zhangyuan['Age']
print(Zhangyuan.items())
3.字典的循环操作:
(1)遍历所有键值对:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
# items()函数返回一个键值对列表
for key, value in Zhangyuan.items():
# 输出键
print('key:', key)
# 输出值
print('value:', value)
(2)遍历字典中所有键:
1)不排序遍历字典中所有键:
a.遍历键值列表:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
# keys()返回键值列表
for key in Zhangyuan.keys():
print('key:', key)
b.遍历字典时默认遍历键值:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
# 遍历字典默认为遍历键值
for key in Zhangyuan:
print('key:', key)
2)排序遍历字典中所有键:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
for key in sorted(Zhangyuan.keys()):
print('key:', key)
(3)遍历字典中所有值:
1)不考虑重复值直接遍历字典内所有值:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master'}
# values()获取字典的值列表
for value in Zhangyuan.values():
print('value:', value)
2)剔除重复项并遍历字典内所有值:
Zhangyuan = {'Age': 24, 'Sexual': 'female', 'Aducational Background': 'master', 'Lalala': 24}
# 不剔除重复项直接遍历输出值
for value in Zhangyuan.values():
print('value:', value)
# 剔除重复项并遍历输出值
for value in set(Zhangyuan.values()):
print('value:', value)
4.字典的嵌套
(1)嵌套字典的列表:
# 4个字典表示四个人的属性
Zhang = {'Age': 24, 'Sexual': 'female'}
Wang = {'Age': 20, 'Sexual': 'male'}
Deng = {'Age': 29, 'Sexual': 'male'}
Liu = {'Age': 50, 'Sexual': 'female'}
# 由四个字典组成的列表
People = [Zhang, Wang, Deng, Liu]
print(People)
(2)嵌套列表的字典:
Zhang = {'Age': 24, 'Sexual': 'female'}
# 创建学历列表
aducational_background = ['primary', 'junior', 'undergraduate', 'master']
# 将新的键值对添加到字典中
Zhang['AducationalBackground'] = aducational_background
print(Zhang)
(3)嵌套字典的字典:
# 将嵌套字典的列表中的例子以字典嵌套实现
People = {'Zhang': {'Age': 24, 'Sexual': 'female'},
'Wang': {'Age': 20, 'Sexual': 'male'},
'Deng': {'Age': 29, 'Sexual': 'male'},
'Liu': {'Age': 50, 'Sexual': 'female'}}
print(People)