python复习第3天:python基本数据类型(下)
2020-02-23 本文已影响0人
潮办公
Python基本数据类型
字典
-
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
-
在同一个字典中,键(key)必须是唯一的。
-
字典中键所对应的值是可变的
-
字典的创建方法:
- 法1:直接用中括号,冒号左边为键,冒号右边为值,多个键和值则用逗号隔开
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'}
- 法2:通过dict函数创建字典,把key当成参数传入函数
b = dict(key1='你好', key2='我好', key3='大家好') # 效果和上面是一样的
- 法3:创建空字典,然后通过赋值的方式更新字典里面的键和值
c = dict() # 创建空字典,等同于c = {} c['key1'] = '你好' c['key2'] = '我好' c['key3'] = '大家好'
- 法4:利用二维序列创建字典。
list1 = [['key1', '你好'], ['key2', '我好'], ['key3', '大家好']] dict1 = dict(list1) print(dict1)
-
字典的查看方法:
- 直接通过访问键的方法查看值
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} print(a['key2']) """ 输出结果: 我好 """
- 通过for循环遍历的方法查看(不会循环的可暂时跳过)
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} for i, j in a.items(): print(i, '\t', j) """ 输出结果: key1 你好 key2 我好 key3 大家好 """
items方法会把字典重新拆分成二维序列的形式。通过for循环可以抽出单个序列,其中序列左边为key,右边为value,所以可以通过此方法遍历字典中所有键和值。
-
字典元素的增加:
- 直接通过增加新键的方法增加新字典。
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} a['key4'] = '才是真的好' print(a) """ 输出结果: {'key1': '你好', 'key2': '我好', 'key3': '大家好', 'key4': '才是真的好'} """
-
字典元素的更新:
- 直接通过访问键的方法,然后重新赋值即可更新值
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} a['key3'] = '楼上说的对' print(a) """ 输出结果: {'key1': '你好', 'key2': '我好', 'key3': '楼上说的对'} """
-
字典元素的清空:
- 通过clear方法,可以把字典给清空
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} a.clear() print(a) """ 输出结果: {} """
-
字典的常用函数
- len: 查看字典元素个数
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} print(len(a)) """ 输出结果: 3 """
-
字典常用方法:
- key in dict,验证键是否在字典内,返回布尔值
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} print('key1' in a) """ 输出结果: True """
- pop:删除字典中给定键所对应的值。
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} a.pop('key1') print(a) """ 输出结果: {'key2': '我好', 'key3': '大家好'} """
- items:将字典化为二维序列(上面讲过了)
- popitems:删除最后一个键值,并且随机返回删除的结果。
a = {'key1': '你好', 'key2': '我好', 'key3': '大家好'} result = a.popitem() # result用来接受返回的结果 print(a) print(result) """ 输出结果: {'key1': '你好', 'key2': '我好'} ('key3', '大家好') """
元组
-
元组和列表类似,用小括号表示,但是元组不可以修改
-
元组的创建方法
- 方法一:直接利用tuple函数创建元组(类似List函数)
a = tuple() # 创建空元组 b = tuple('shdifhaih') # 会讲str按字母分割 print(a) print(b) """ 输出结果: () ('s', 'h', 'd', 'i', 'f', 'h', 'a', 'i', 'h') """
- 方法二:利用小括号创建元组
a = ('a', ) # 注意,如果只有一个元素,逗号不可以省略,不然括号会当成是数字运算符 print(a) print(type(a)) b = ('b') # 错误示范 print(type(b)) """ 输出结果: ('a',) <class 'tuple'> <class 'str'> """
-
元组的切片
- 基本和列表一样的
a = tuple(range(10)) # tuple函数可以和List函数一样把列表转tuple print(a) print(a[0]) # 取第一个元素 print(a[1: 4]) # 取2,3,4元素,不包括a[4],即不包括第五个元素 print(a[1:9:2]) # 从第二个取到第九个,不包括第10个,每隔两个取一个 print(a[-3:-1]) # 从倒数第三个,取到倒数第一个,不包括倒数第一个 """ 输出结果: (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) 0 (1, 2, 3) (1, 3, 5, 7) (7, 8) """
-
元组运算符
- in:检测元素是否在元组内(注意:字符串(str)和列表(list)也有此方法)
a = tuple(range(10)) # tuple函数可以和List函数一样把列表转tuple print(1 in a) """ 输出结果: True """
-
+
:元组可以用加号进行拼接,类似list的extend方法。
a = tuple(range(10)) # tuple函数可以和List函数一样把列表转tuple b = tuple(range(11, 20)) a = a + b print(a) """ 输出结果: (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19) """
-
*
:元组的复制(注意:字符串(str)和列表(list)也有此方法)
a = (20,) a = a * 10 print(a) """ 输出结果: (20, 20, 20, 20, 20, 20, 20, 20, 20, 20) """
- 元组的迭代(for循环再讲,List也可以)
-
元组的常用函数:
- len:计算元组个数,和列表一样的
- max:计算元组中最大的那个元素,和列表一样的
- min:计算元组中最小的那个元素,和列表一样的
- tuple:把其它类型转化为元组,上面元组的建立已经展示过了