PythonClassChy/python27Class/pythonLearningNotes/flora_0213_notes.txt

112 lines
3.9 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

=================================
Notes
Author: Flora Chen
-_- -_- -_- -_- -_- -_- -_- -_-
=================================
******字典dict******
1. 字典的定义
花括号{}表示字典,字典中的元素是由键值(key:value)对组成的,每个元素用逗号隔开。
字典是没有下标索引的其键key就是索引。
第一种:直接通过{'key': value}的形式定义
dic = {'a': 11, 'b': 12}
第二种使用dict()转换[('key', value), ('key', value) ...]这种数据类型
dic = dict([('a', 11), ('b', 12)])
第三种dict(key = value, key = value ...)
dic = dict(a=11, b=12)
示例:
dic = {}
dict2 = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
print(type(dic)) # 输出结果:<class 'dict'>
print(dict2) # 输出结果:{'name': 'flora', 'age': 18, 'phone': '10220020200'}
print(dict2['name']) # 输出结果flora
2. 字典中的相关规范
字典中的键不能重复。
字典中的键只能使用不可变类型(字符串,数值类型,元组)的数据(通常是用字符串)。
字典中的值可以是任何数据类型。
扩展:
不可变类型的数据:数值类型,字符串,元组
可变类型的数据:列表,字典,集合
3. 字典的相关操作
添加一个元素
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
dic['height'] = 156
print(dic)
# 输出结果:{'name': 'flora', 'age': 18, 'phone': '10220020200', 'height': 156}
添加多个元素
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
dic.update({'height': 156, 'heavy': '56kg'})
print(dic)
# 输出结果:{'name': 'flora', 'age': 18, 'phone': '10220020200', 'height': 156, 'heavy': '56kg'}
修改元素:键已存在就是修改。否则是新增。
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
dic['phone'] = '18956423668'
print(dic)
# 输出结果:{'name': 'flora', 'age': 18, 'phone': '18956423668'}
删除元素
pop():通过键去删除指定的键值对,返回键对应的值
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
res = dic.pop('phone')
print(res) # 输出结果10220020200
print(dic)
# 输出结果:{'name': 'flora', 'age': 18}
popitem():删除最后添加进去的键值对,以元组的形式返回一个键值对
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
res = dic.popitem()
print(res) # 输出结果:('phone', '10220020200')
print(dic)
# 输出结果:{'name': 'flora', 'age': 18}
查找元素
通过键进行索引取值,键不存在会报错
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
res = dic['phone']
print(res) # 输出结果10220020200
get()通过键获取对应的值键不存在不会报错但是会返回None
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
res = dic.get('phone')
print(res) # 输出结果10220020200
res2 = dic.get('heg') #键不存在
print(res2) # 输出结果None
获取字典中的所有键,所有值,所有键值对
keys():获取字典中所有的键
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
print(dic.keys()) # 输出结果dict_keys(['name', 'age', 'phone'])
print(list(dic.keys())) # 可通过list()转换成列表
# 输出结果:['name', 'age', 'phone']
values():获取字典中所有的值
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
print(dic.values()) # 输出结果dict_values(['flora', 18, '10220020200'])
print(list(dic.values())) # 可通过list()转换成列表
# 输出结果:['flora', 18, '10220020200']
items():获取字典中所有的键值对
示例:
dic = {'name': 'flora', 'age': 18, 'phone': '10220020200'}
print(dic.items()) # 输出结果dict_items([('name', 'flora'), ('age', 18), ('phone', '10220020200')])
print(list(dic.items())) # 可通过list()转换成列表
# 输出结果:[('name', 'flora'), ('age', 18), ('phone', '10220020200')]