第三章 数据类型 — 列表(list)、元组(tuple)

mac2022-06-30  96

一、列表 - 列表是写在[]之间的,每一项元素使用逗号分隔开的数据类型 - 列表可以完成大多数集合类的数据结构实现,列表中的元素的类型可以不相同,它支持数字、字符串甚至可以包含列表,也就是列表的嵌套 1 索引和切片 - 列表同字符串一样,有索引也可以切片,只不过切片得到的是一个列表 变量[头下标:尾下标:步长] 1 list = ['abcd', 786, 2.23, 'bast', 70.2] 2 tinylist = [123, 'bast'] 3 4 print(list) # 输出完整列表 5 print(list[0]) # 输出列表第一个元素 6 print(list[1:3]) # 从第二个开始输出到第三个元素 7 print(list[2:]) # 输出从第三个元素开始的所有元素 8 print(tinylist * 2) # 输出两次列表 9 print(list + tinylist) # 连接列表 和字符串不相同的是:列表是可以发生改变的,能够直接在原来的对象上进行操作 2 “增” li = [1,'a','b',2,3,'a'] # li.append('aaa') #增加到最后 # li.append([1,2,3]) #增加到最后 # li.insert(0,55) #按照索引去增添指定元素,插入每一个数据的位置都需要向后移动,效率比较低 # li.extend(['q,a,w']) #迭代的去增 # li.extend(['q,a,w','aaa']) # li.extend('a') # li.extend('abc') # li.extend('a,b,c') 3 “删” l1 = li.pop(1) #按照索引位置去删除,有返回值,默认为最后一个 print(l1) del li[1:3] #按照位置去删除,也可切片删除没有返回值。 print(li) # li.remove('a') #按照元素去删除 print(li) # li.clear() #清空列表 4 “改” # li[1] = 'dfasdfas' # 索引改 # print(li) # li[1:3] = ['a','b'] #切片改 如果步长数不是1, 要注意元素个数 # print(li) 5 “查” 切片去查,或者用循环去查 for el in li: print(el) 6 其他操作 - count() : 方法用来统计元素在列表中出现的次数 a = ["q","w","q","r","t","y"] print(a.count("q")) - index() : 从列表中找某个元素第一个匹配项的索引位置 a = ["q","w","r","t","y"] print(a.index("r")) - sort() : 排序,默认为升序,reverse = True为降序 - reverse() : 将列表中的元素反向存放 a = [2,1,3,4,5] a.sort() # 他没有返回值,所以只能打印a print(a) a.reverse() #他也没有返回值,所以只能打印a print(a) 7 列表的嵌套 采用降维操作,一层一层分析 lst = [1, "dalao", "jiumo", ["马花藤", ["可口可乐"], "王监零"]] # 找到"dalao" print(lst[1]) # 找到"dalao"和"jiumo" print(lst[1:3]) # 找到"dalao"的"a" print(lst[1][1]) # 将"jiumo"然后字母大写,在放回去 s = lst[2] s = s.capitalize() lst[2] = s print(lst) # 简写 lst[2] = lst[2].capitalize() print(lst) # 把"dalao"换成"dadiao" lst[1] = lst[1].replace("lao", "diao") print(lst) # 把"马花藤"换成"马化藤" lst[3][0] = lst[3][0].replace('', '') print(lst[3][0]) lst[3][1].append("雪碧") print(lst) 二、元组 1. 特性: 元组(tuple)俗称不可变的列表,又可以被看成只读列表。元组写在小括号里,元素之间用逗号隔开。 元组中的元素的类型可以不相同。虽然tuple的元素不可变,但是他可以包括可变的对象,比如list列表。 元组与字符串类似,可以被索引,下标从0开始,-1作为结尾。可以做切片处理。 元组构造如果只包含0个或者1个元素的时候有特殊的语法规则: 1 tup1 = () # 空元组 2 tup2 = (20,) # 一个元素,需要在元素后添加逗号 元组可以使用+操作符进行拼接 2 操作 元组不允许“增、删、改”。 元组允许“查看”、“循环“、”切片“ 查看的方式可以使用索引,也可以使用 for 循环 1 print(tu[2]) 2 print(tu[::2]) 注意: 元组是不允许操作,但是元组有count(),index(),len()等方法。并且元组内的子元素是可以进行操作的,这取决与子元素是否是是可变对象。 1 # 例如子元素为列表list时,可以对列表中的元素进行操作: 2 tu = (1,"哈喽", "how are you?", "jiumo", ["jiumo"]) 3 tu[4].append("dada") 4 print(tu) 3 range()方法 range()是一个可迭代对象 —— range(n) ==> 0 ——> n -1 1 for i in range(0, 10): 2 print(i) # 输出结果为 0,1,2 ......9 —— range(n,m) ==> n ——> m 1 for i in range(2, 0): 2 print(i) # 输出结果为 2,3,4......9 —— range(n, m, i) ==> n ——> m 步长为i 1 lst = ["马頔", "陈粒", "赵雷", "好妹妹"] 2 for i in range(len(lst)): 3 print(i) 4 print(lst[i])

转载于:https://www.cnblogs.com/jiumo/p/9398388.html

相关资源:python如何把字符串类型list转换成list
最新回复(0)