Python:列表
列表、元组常用的操作
1.列表:索引、切片、相加、相乘,增删改查等
列表是可变的!!!
- 索引:理解为查找某个位置的元素:下标从0开始。
list_1=['北京','上海','武汉','南京','昆明']
print(list_1[1]) #结果为:上海
-
切片:可以理解为截取列表中的一部分:[x:y], 从x位置开始(包含),到y(不包含)。[x:-y],-y表示从后往前找(不包含),-1是最后一个。以下是各种情况的举例:
list_1=['北京','上海','武汉','南京','昆明'] print(list_1[1:3]) # 结果为:['上海', '武汉'] print(list_1[1:-2]) # ['上海', '武汉'] print(list_1[-3:]) # ['武汉', '南京', '昆明'] 后三个元素 print(list_1[:3]) # ['北京', '上海', '武汉'] 前三个元素 #可以用切片复制列表 list_2=list_1[:] # 两个索引权全省略,复制整个列表 print(list_2) #还可指定步长,但步长不能为0,否则无法移动 print(list_1[0:4:2]) # 以2 为步长,即从开始隔一个取一个,直到索引4的前一个结束 print(list_1[::2]) # 全部元素,以2为步长,即隔一个取一个 # 步长为负,从右向左取,即反向取值。 print(list_1[4:0:-2]) # ['昆明', '武汉'] print(list_1[::-2]) # ['昆明', '武汉', '北京'] 两个索引都省略,
-
列表相加:list_1+list_2,就是两个列表拼接
list_1=['北京','上海','武汉','南京','昆明'] list_2=['西安','丽江'] print(list_1+list_2) # ['北京', '上海', '武汉', '南京', '昆明', '西安', '丽江']4.列表与数 x 乘:将这个列表重复x次
list_2=['西安','丽江'] print(list_2*3) #['西安', '丽江', '西安', '丽江', '西安', '丽江']
-
使用 in 检查某个元素是否在系列中
list_1=['北京','上海','武汉','南京','昆明'] print('北京' in list_1) # True
-
列表长度,最小和最大:
list_1=['12','4','123','423','21'] print(len(list_1)) # 5 print(max(list_1)) # 423 print(min(list_1)) # 12
-
对列表基本操作、常用方法:
(1)字符串转列表,列表转字符串:
list_1=list('hello') print(list_1) # 字符串转列表 ['h', 'e', 'l', 'l', 'o'] print(''.join(list_1)) # 字符列表转字符串 hello(2)修改
list_1=[1,2,3,4,5,6,7] list_1[1]=10 # 修改元素 print(list_1) # [1, 10, 3] del list_1[1] # 删除元素 print(list_1) # [1, 3] list_1[2:]=[1,1,1] # 切片赋值 print(list_1) # [1, 3, 1, 1, 1] list_1[1:1]=['jin','chen'] # 切片插值 print(list_1) # [1, 'jin', 'chen', 3, 1, 1, 1] list_1[1:3]=[] # 切片删除值 print(list_1) # [1, 3, 1, 1, 1](3) 列表常用方法:append()、copy()、count()、extend()、clear() 等
append()
list_1=[1,2,3,4,5,6,7] list_1.append(111) # 在列表末尾填加元素 print(list_1) # [1, 2, 3, 4, 5, 6, 7, 111]copy()
list_2=list_1.copy() # 用copy() list_1[:] list(list_1) 复制列表,一个列表改变不影响另一个 print(list_2) # [1, 2, 3, 4, 5, 6, 7, 111] list_2=list_1 # 直接赋值方式,一个改变另一个受影响 list_1[0]=1111 print(list_2) # [1111, 2, 3, 4, 5, 6, 7, 111]count()
list_1=['hello','world','python','hello','world'] print(list_1.count('hello')) # 统计‘hello’的个数 2clear()
list_1.clear() # 清空列表 print(list_1) # []extend()
list_1=['hello','world','python','hello','world'] list_2=[1,2,3] list_1.extend(list_2) # 用一个列表扩展另一个 ,而 list_1 + list_2 返回新列表 print(list_1) # ['hello', 'world', 'python', 'hello', 'world', 1, 2, 3]insert()
list_2=[1,2,3] list_2.insert(1,'hello') # 插入 print(list_2) # [1, 'hello', 2, 3]pop()
list_2.pop() # 删除末尾元素 print(list_2) # [1, 'hello', 2]remove()
list_2.remove('hello') # 删除指定元素 print(list_2) # [1, 2]reverse()
list_2.reverse() # 反序 print(list_2) # [2, 1] list(reversed(list_2)) # 反序 print(list_2) # [1, 2]sort()
list_1=[5,1,3,55,12,15] list_1.sort() # 排序 print(list_1) # [1, 3, 5, 12, 15, 55] list_2=sorted(list_1) # sorted(x) 排序后返回一个新列表 print(list_2) list_1.sort(reverse=True) # 反向排序 print(list_1) # [55, 15, 12, 5, 3, 1]
元组:不可变,不可修改
tuple_1=(1,2,3)
print(tuple_1) # (1,)
print(tuple_1[:2]) # 元组切片 (1, 2)
list_1=[1,2,3,4]
print(tuple(list_1)) # (1, 2, 3, 4)

浙公网安备 33010602011771号