一. 列表
- 列表是一个有序可扩展的数组,类似于java中的List
- 列表存放的值的类型可以不唯一
常用操作示例
'''创建列表'''list1 = [0, 1, 2, 3, 4, 5, 'a', 'b', 'c', 'd', 'e', 2, 5, 8]print(type(list1))print(list1)'''列表的切片'''# 步长1,正序,返回索引1到3 print(list1[1:4])# 步长1,正序,返回索引-5到-1 print(list1[-5:])# 步长2,正序,返回索引1到5print(list1[1:6:2])# 步长1,正序,返回索引0到最大print(list1[:])# 步长2,正序,返回索引0到最大print(list1[::2])'''列表的常用操作'''# index 查找指定元素的位置 6print(list1.index('a'))# count 统计指定元素出现次数 2print(list1.count(2))# 追加元素list1.append(9)print(list1)# 修改索引2的元素为 'z'list1[2] = 'z'print(list1)# 索引3的位置插入元素 'x'list1.insert(3, 'x')print(list1)# 合并列表list2 = ['hello', 'world']print(list1 + list2)list1.extend(list2)print(list1)# 删除索引是3的元素,并返回print(list1.pop(3))print(list1)# 删除第一个元素 5list1.remove(5)print(list1)# 删除最后两个元素del list1[-2:]print(list1)# 删除列表del list2# print(list2)# 默认排序,按照ASCII排序list2 = ['s', 't', 'Tom', 'Mary', 'Jack']list2.sort()print(list2)# 倒序列表list2.reverse()print(list2)# 引用赋值list3 = list1list1[0] = 'd'print(list1, list3)# 浅copylist4 = list1.copy()list1[0] = 'E'print(list1, list4)
二. 元组
- 元组是一个有序固定大小的只读数组,类似于java中的枚举
- 元组内的元素不可以改变
- 元组存放的值的类型可以不唯一
常用操作示例
'''创建元组'''countries = ('China', 'England', 'Hungary', 'Belgium', 'England', 1000)# 元组类型print(type(countries))# 获取指定索引元素print(countries[0])# 获取指定元素索引print(countries.index('China'))# 切片,获取第二个元素开始的所有元素print(countries[1:])# 计算指定元素的个数print(countries.count('England'))
三. 集合
- 集合是基于hash的一个无序可扩展的数组,类似于java中的HashSet
- 因为基于hash,所以集合内的元素不会重复
- 集合存放的值的类型可以不唯一
常用操作示例
'''创建集合'''set1 = {1, 2, 3, 4, 5, 1, 2, 3, 4, 5, 'stone'}print(type(set1))print(set1)'''集合常用操作'''# 添加元素set1.add(5)print(set1)set1.add(6)print(set1)# 删除元素# 随机删除set1.pop()print(set1)# 指定删除,若元素不存在,则报错set1.remove(6)print(set1)# set1.remove(10)# 指定删除,若元素不存在,不报错set1.discard(5)print(set1)set1.discard(10)print(set1)# 集合合并set2 = {5, 6, 7, 8, 9}set1.update(set2)print(set1)# 合并列表list1 = [1, 2]set1.update(list1)print(set1)# 合并元组tuple1 = (9, 10)set1.update(tuple1)print(set1)# 引用赋值set3 = set1set1.pop()print(set1, set3)# 浅copyset4 = set1.copy()set1.pop()print(set1, set4)# 集合运算set5 = {6, 7, 8, 9, 10, 11, 12, 13, 14, 15}# 交集print(set1.intersection(set5))print(set1 & set5)# 并集print(set1.union(set5))print(set1 | set5)# 差集print(set1.difference(set5))print(set1 - set5)print(set5.difference(set1))print(set5 - set1)# 对称差集, 两个差集的并集print(set1.symmetric_difference(set5))
四. 字典
- 字典是基于Hash的Map,类似于java中的HashMap
- 字典存放的key-value对的类型可以不唯一
常用操作示例
'''创建字典'''dict1 = { 'China': ('CHN', '北京', '汉语'), 'England': ('GBR', '伦敦', '英语'), 'Swiss': ('CHE', '伯尔尼', '德语')}print(type(dict1))print(dict1)'''字典的常用操作'''# 输出keyprint(dict1.keys())# 输出valuesprint(dict1.values())# 追加元素dict1['French'] = ('FRA', '巴黎', '法语')print(dict1)# 修改索引2的元素为 'z'dict1['Swiss'] = ('CHE', '伯尔尼', '法语')print(dict1)# 删除索引是3的元素,并返回print(dict1.pop('Swiss'))print(dict1)# 删除第一个元素 5del dict1['French']print(dict1)# 字典合并dict2 = { 'Swiss': ('CHE', '伯尔尼', '法语'), 'French': ('FRA', '巴黎', '法语'), 1000: 'country'}dict1.update(dict2)print(dict1)# 引用赋值dict3 = dict1dict1['England'] = ('GBR', '伦敦?', '英语?')print(dict1, dict3)# 浅copydict4 = dict1.copy()dict1['England'] = ('GBR', '伦敦!', '英语!')print(dict1, dict4)# 清空dict1.clear()print(dict1)
完整的代码请参考:
https://gitee.com/dean2083/python-learning
day2
坚持总会有收获