比较排序 列表 分片 批量 交集 on() for循环 subset
列表使用[]或list()创建,元素可变如:list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]list02 = list([‘user‘, ‘123‘, ‘a1‘, ‘‘])print(list01)print(list01[0])print(list01[0][3])list01[0] = ‘That‘print(list02)运行结果:[‘user‘, ‘123‘, ‘a1‘, ‘‘]userr[‘That‘, ‘123‘, ‘a1‘, ‘‘]
列表可以进行的操作:-索引list01[0]list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]print(list01[0])print(list01[1])运行结果:user123
-列表元素切片用来分片显示list01[0:1]list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]print(list01[0:2])print(list01[0:1])运行结果:[‘user‘][‘user‘, ‘123‘]
-追加元素到列表后面list01.append(‘xxoo‘)list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]list01.append(‘xxoo‘)print(list01)运行结果:[‘user‘, ‘123‘, ‘a1‘, ‘‘, ‘xxoo‘][ps:注意在追加一个元素到列表中的时候,这个动作不能赋值给变量,赋值的话,此变量为none]例如:list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]v = list01.append(‘xxoo‘)print(v)运行结果:None
-列表元素插入新值list01.insert(1, ‘xxoo‘)list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]list01.insert(1, ‘xxoo‘)print(list01)运行结果:[‘user‘, ‘xxoo‘, ‘123‘, ‘a1‘, ‘‘][ps:数字1表示,要插入的值作为列表第几个元素]
-列表元素更改list01[0] = ‘fly‘list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]list01[0] = ‘fly‘print(list01)运行结果:[‘fly‘, ‘123‘, ‘a1‘, ‘‘]
-删除list01.remove[‘val‘]del list01[key]list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]list01.remove(‘123‘)或del list01[2]print(list01)运行结果:[‘user‘, ‘a1‘, ‘‘]或[‘user‘, ‘123‘, ‘‘]
-删除列表中的某个元素,并可以把删除的元素赋值给一个变量.pop(key)list01 = [‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘, ‘张小凡‘]v = list01.pop(2)print(list01)print(v)运行结果:[‘张小凡‘, ‘小白‘, ‘陆雪琪‘, ‘张小凡‘]碧瑶
-清空所有元素.clear()list01 = [‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘]list01.clear()print(list01)运行结果:[]
-浅拷贝.copy()list01 = [‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘]v = list01.copy()print(v)运行结果:[‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘]
-深拷贝待更新...
-长度len()list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]v = len(list01)print(v)运行结果:4
-计算某个元素在列表中出现了几次.count()list01 = [‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘, ‘张小凡‘]v = list01.count(‘张小凡‘)print(v)运行结果:2
-判断某个值是否包含在一个列表中... in ...:list01 = [‘user‘, ‘123‘, ‘a1‘, ‘‘]if ‘123‘ in list01: print(‘yes‘)else: print(‘no‘)运行结果:yes
-批量增加元素.extend()list01 = [‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘, ‘张小凡‘]list01.extend([‘林惊羽‘, ‘金瓶儿‘, ])print(list01)运行结果:[‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘, ‘张小凡‘, ‘林惊羽‘, ‘金瓶儿‘]
-元素反转,倒序排列.reverse()list01 = [‘张小凡‘, ‘小白‘, ‘碧瑶‘, ‘陆雪琪‘]list01.reverse()print(list01)运行结果:[‘陆雪琪‘, ‘碧瑶‘, ‘小白‘, ‘张小凡‘]
-对列表内的元素进行比较排序(默认从小到大).sort().sort(reverse=True) #从大到小num = [1, 10, 23, 345, 32345, 1911991]num.sort()print(num)num.sort(reverse=True)print(num)运行结果:[1, 10, 23, 345, 32345, 1911991][1911991, 32345, 345, 23, 10, 1]
##########################################################
元组使用()创建,元素不可变约定:创建一个元组的时候,要在最后一个元素的后面再加上一个逗号‘,‘;如:list02 = (‘user‘, ‘123‘, ‘a1‘, ‘‘)print(list02)list02[0] = ‘That‘print(list02)结果:(‘user‘, ‘123‘, ‘a1‘, ‘‘)(‘user‘, ‘123‘, ‘a1‘, ‘‘)
元组可进行的操作:list02 = (‘user‘, ‘123‘, ‘a1‘, ‘‘, )
索引list02[0]
切片list02[0:2]
循环for i in list02: print(i)
长度v = len(list02)
包含if ‘123‘ in list02: print(‘ok‘)else: print(‘no‘)
需要注意的是:元组的子元素是不可修改的,但是子元素如果是列表或字典等集合类型,那么该子元素的子元素是可以被修改的;
集合set()集合使用{val1, val2, val3}创建,不可重复的列表,可变类型
特点:-不支持索引取值-支持for循环-不能嵌套列表,集合-可嵌套元组
-添加元素.add()
-清空集合所有元素.clear()
-元素移除.discard(‘val‘)
-是否有交集.isdisjoint()
-是否是被比较者的子集.issubset()
-是否是被比较者的父集issuperset()
-移除一个值并获取到移除的值赋值给一个变量.pop()
-移除一个值.remove()
-比较不同之处,注意比较的双方位置.difference()s1 = {‘a‘, ‘b‘, ‘c‘, ‘111‘}s2 = {‘a‘, ‘b‘, ‘c‘, ‘222‘}v1 = s1.difference(s2)v2 = s2.difference(s1)print(v1)print(v2)运行结果:{‘111‘}{‘222‘}
-将比较结果重新更新赋值给比较者.difference_update()s1 = {‘a‘, ‘b‘, ‘c‘, ‘111‘}s2 = {‘a‘, ‘b‘, ‘c‘, ‘222‘}s1.difference_update(s2)print(s1)运行结果:{‘111‘}
-比较不同之处,并将所有不同的元素同时赋值给一个变量.symmetric_difference()s1 = {‘a‘, ‘b‘, ‘c‘, ‘111‘}s2 = {‘a‘, ‘b‘, ‘c‘, ‘222‘}v = s1.symmetric_difference(s2)print(v)运行结果:{‘222‘, ‘111‘}
-将比较结果重新更新赋值给比较者.symmetric_difference_update()
-取比较对象的交集.intersection()s1 = {‘a‘, ‘b‘, ‘c‘, ‘111‘}s2 = {‘a‘, ‘b‘, ‘c‘, ‘222‘}v = s1.intersection(s2)print(v)运行结果:{‘b‘, ‘c‘, ‘a‘}
-将比较结果重新更新赋值给比较者.intersection_update()
-取比较对象的并集.union()s1 = {‘a‘, ‘b‘, ‘c‘, ‘111‘}s2 = {‘a‘, ‘b‘, ‘c‘, ‘222‘}v = s1.union(s2)print(v)运行结果:{‘a‘, ‘b‘, ‘c‘, ‘222‘, ‘111‘}
-将比较结果重新更新赋值给比较者.union_update()
-批量更新.update(‘val1‘, ‘val2‘, ‘val3‘, ...)s1 = {‘a‘, ‘b‘, ‘c‘, ‘d‘}s1.update({‘111‘, ‘222‘, ‘333‘})print(s1)运行结果:{‘d‘, ‘333‘, ‘c‘, ‘222‘, ‘a‘, ‘111‘, ‘b‘}
07-列表/元组/集合
来源: http://www.bubuko.com/infodetail-2067329.html