Python数据类型二
2.1 散列类型
- 数值类型:int、float、bool——》存储一个数值
- 序列类型:str、list、tuple——》存储多个数据
散列类型的特征:无序、内部元素不重复
2.1.1 字典 dict
用来保存一些典型的对应关系的数据类型,特点就是用键值对的方式来存储数据
键值:类似于我们生活中的字典,根据拼音找某个字,拼音就是key(键),字就是value(值)
字典查询速度快
键值对的语法:
key:value——》 (键:值)
由于字典是用键值对的方式进行存储数据,更适合去描述一个对象
语法格式:
call = {'c':'11','v':'13','j':'15'}
user = {'姓名':'川','年龄':18,'工作':'python'}输出方式:
字典名[键]
print(call['c'])
print(user['工作'])11341
python讲师
-
字典是无序的,没有下标,是直接通过键值对的方式存储数据的,所以通过键来取值
- 字典名[键]
-
不重复,字典里的键(key)是不可以重复,如果重复的话则取最后一个重复键的值
dict1 = {'a':1,'b':2,"a":3,"a":4,"a":5} print(dict1) # 默认取最后一个键 {'a': 5, 'b': 2}
-
可变性,字典里面的数据是可变的
dict1 = {'a':1,'b':2,"a":3,"a":4,"a":5} dict1['b'] = 100 print(dict1){'a': 5, 'b': 100}
当我们想要表示一组固定信息的时候,用字典可以更加的直观
key是字典的关键数据,程序对字典的操作都是基于key的
通过key访问value
scores = {'语文':89}
print(scores['语文']) # 89通过key添加key-value对
scores = {'语文':89}
scores['数学'] = 93
scores[92] = 5.7
print(scores) # {'语文': 89, '数学': 93, 92: 5.7}通过key删除key-value对,使用del语句
scores = {'语文':89}
scores['数学'] = 93
scores[92] = 5.7
del scores['语文']
del scores['数学']
print(scores) # {92: 5.7}通过key修改key-value对,新赋的值就会覆盖原有的值
cars = {'BMW':88,'benchi':83,'tesila':95}
cars['benchi'] = 4.3
cars['tesila'] = 3.8
print(cars)通过key判断指定key-value对是否存在,可以使用in或者not in,都是基于key来判断的
cars = {'BMW':88,'benchi':83,'tesila':95}
cars['benchi'] = 4.3
cars['tesila'] = 3.8
print('tesila' in cars) # True
print('baoshijie' in cars) # False
print('BYD' not in cars) # True只能通过key访问value,使用的也是方括号语法,
字典的key可以是任意不可变类型
如果程序中要是用的字典的key都是整数类型的话,我们可以考虑不用字典,用列表
列表的索引是从0开始连续增大的,但是字典的索引即使是整数类型,也不需要从0开始,而且不需要连续
列表不允许对不存在的索引赋值,但是字典允许直接对不存在的key赋值