04 Day Python列表与元组
元组:
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")!但是元组中的列表可以修改。
1 #元组内容不可修改,如下: 2 i = ('大雄','王晓明',['小红','小刚','花花'],'你好') 3 i[0] = '哆啦A梦' 4 print(i) 5 6 报错:Traceback (most recent call last): 7 File "G:/lod_boy_S9_Python/4Day/test.py", line 176, in <module> 8 i[0] = '哆啦A梦' 9 TypeError: 'tuple' object does not support item assignment 10 11 12 #修改元组中列表里面的元素 可以成功 13 i = ('大雄','王晓明',['小红','小刚','花花'],'你好') 14 i[2][0] = '哆啦A梦' 15 print(i) 16 # 输出:('大雄', '王晓明', ['哆啦A梦', '小刚', '花花'], '你好')
列表:
增:
1 #append 增加新数据到列表最后 2 li = ['alex','wusir','egon','女神','taibai'] 3 li.append('demi') 4 print(li) 5 #输出:['alex', 'wusir', 'egon', '女神', 'taibai', 'demi'] 6 7 #insert 增加新数据到列表指定位置(插入) 8 li = ['alex', 'wusir', 'egon', '女神', 'taibai', 'demi'] 9 li.insert(2,'liuyi') 10 print(li) 11 #输出:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi'] 12 13 #extend 迭代添加 数据会被分解到最小元素 例:'小明' 会被分解为 '小', '明' 14 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi'] 15 li.extend('小明') 16 print(li) 17 #输出结果:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明']
删:
1 #pop 有返回值 2 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 3 li.pop() #没有值 默认删除最后一个 4 print(li) 5 #输出:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小'] 6 7 #按照索引删除 8 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 9 name = li.pop(0) #按照索引删除 10 print(name,li) 11 #输出:alex ['wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 12 13 #remove 按照元素删除 无返回值 14 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 15 li.remove('明') 16 print(li) 17 18 #clear 清空列表 19 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 20 li.clear() 21 print(li) 22 23 #del删除列表 会报错 24 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 25 del.li 26 print(li) 27 28 #切片删除列表中某一部分 29 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 30 del li[0:3] 31 print(li) 32 #输出:['egon', '女神', 'taibai', 'demi', '小', '明']
改:
1 #按照索引修改 2 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 3 li[0] = 'demi' #按照索引修改 4 print(li) 5 #输出:['demi', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 6 7 8 9 #会拆分到最小单元 10 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 11 li [0:2] = '你好啊' 12 print(li) 13 #输出:['你', '好', '啊', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 14 15 16 17 #完整替换切片部分 18 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 19 li [0:2] = ['1。2。3'] 20 print(li) 21 #输出:['1。2。3', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明']
查:
1 for循环 2 #按照索引数循环 3 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 4 for i in li : 5 print(li) 6 #输出: 7 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 8 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 9 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 10 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 11 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 12 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 13 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 14 # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 15 16 #按照索引数循环打印出切片内容 17 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 18 for i in li : 19 print(li[0:2]) 20 # 输出: 21 # ['alex', 'wusir'] 22 # ['alex', 'wusir'] 23 # ['alex', 'wusir'] 24 # ['alex', 'wusir'] 25 # ['alex', 'wusir'] 26 # ['alex', 'wusir'] 27 # ['alex', 'wusir'] 28 # ['alex', 'wusir'] 29 # ['alex', 'wusir'] 30 31 32 len 33 #打印列表长度 34 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 35 i = len(li) 36 print(i) 37 #输出:9 38 39 40 count 41 #某一元素或字符串出现的次数 42 li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 43 i = li.count('alex') 44 print(i) 45 #输出:1 PS:列表中只能查引号中的元素。 46 47 48 49 index 50 #索引位置,,没有会报错。列表中只能用index 51 li =['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'demi', '小', '明'] 52 print(li.index('wusir')) 53 # 输出:1 54 55 sort 56 #从小到大排序(升序) 57 li = ['1', '3', '2', '6', '4', '5', '7', '9', '8'] 58 li.sort() 59 print(li) 60 # # 输出:['1', '2', '3', '4', '5', '6', '7', '8', '9'] 61 62 #从大到小排序(降序) 63 li = ['1', '3', '2', '6', '4', '5', '7', '9', '8'] 64 li.sort(reverse=True) 65 print(li) 66 # # 输出:['9', '8', '7', '6', '5', '4', '3', '2', '1'] 67 68 reverse 69 #列表整体反转 70 li = ['1', '3', '2', '6', '4', '5', '7', '9', '8'] 71 li.reverse() 72 print(li) 73 # # 输出:['8', '9', '7', '5', '4', '6', '2', '3', '1']
列表的嵌套:
1 #打印列表中小列表的元素 2 li = ['alex', 'wusir', 'liuyi', '女神', 'taibai', ['8','3','demi','1'],'小', '明'] 3 print(li[5][2]) 4 # 输出:demi 5 6 #替换某个元素的首字母大写 7 li = ['alex', 'wusir', 'liuyi', '女神', 'taibai', ['8','3','demi','1'],'小', '明'] 8 li [0] = li[0].capitalize() 9 print(li) 10 # 输出:['Alex', 'wusir', 'liuyi', '女神', 'taibai', ['8', '3', 'demi', '1'], '小', '明']
其他操作:
1 join 2 #衔接每个元素 ‘中的符号自定义’ 3 s = ['demi','yang'] 4 sum = '_'.join(s) #衔接每个元素 ‘中的符号自定义’ 5 print(sum) 6 # 输出结果:demi_yang 7 8 rang 9 只存数字的列表,同样顾头不顾尾 10 for i in range(3,10) : 11 print(i) 12 #输出:3.....9 13 14 15 for i in range(10) : 16 print(i) 17 #输出结果:0......9 18 19 20 for i in range(0,10,4) : 21 print(i) 22 #输出:0 3 6 9 PS:如果步长为2 输出为:0 2 4 6 8 步长为4 输出为:0 4 8 23 24 25 #反响 26 for i in range(10,0,-4) : 27 print(i) 28 #输出:10 8 6 4 2 步长为-3 输出为:10 7 4 1 步长为4 输出为:10 6 2
浙公网安备 33010602011771号