4-列表和元组

Posted kuoiea

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4-列表和元组相关的知识,希望对你有一定的参考价值。

一、列表(list)

 

  列表是有序的,有索引,可切片。切片和字符串是一模一样的;索引,切片,步长

切片:

1 list1 = [1, 2, 3, 4, blue, [see, eggs, 8, 9, 3], "green", 2]
2 #切片
3 print(list1[:2])    #[1, 2]
4 print(list1[:6:2])  #[1, 3, ‘blue‘]
5 print(list1[5:7])   #[[‘see‘, ‘eggs‘, 8, 9, 3], ‘green‘]
6 print(list1[-1:-5:-1])  #[2, ‘green‘, [‘see‘, ‘eggs‘, 8, 9, 3], ‘blue‘]
7 print(list1[5][2])  #8
8 print(list1[5][1:3])    #[‘eggs‘, 8]
9 list2 = [1, 2, 4, blue, [see, eggs, 8, 2, 3]]

 

 

列表的增删改查:

增:

  append #在列表的最后面追加,没有返回值
  insert #插入,按照索引去插入
  extend #迭代添加在最后

 1 list1 = [1, 2, 3, 4, blue, [see, eggs, 8, 9, 3], "green", 2]
 2 #
 3 print(list2.append("twitter"))  #None
 4 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3], ‘twitter‘]
 5 list2.append([1,2,3])
 6 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3], ‘twitter‘, [1, 2, 3]]
 7 #按照索引去插入
 8 print(list2.insert(2, "ss"))    #None
 9 print(list2)       #[1, 2, ‘ss‘, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3]]
10 list2.insert(1,[1,2])
11 print(list2)    #[1, [1, 2], 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3]]
12 list2[4].insert(2,2)
13 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 2, 8, 2, 3]]
14 
15 #extend迭代追加
16 list2.extend([1,2,3])
17 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3], 1, 2, 3]
18 list2.extend("lkjh")
19 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3], ‘l‘, ‘k‘, ‘j‘, ‘h‘]
20 list2.extend([1,[1,2]])
21 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3], 1, [1, 2]]

删:

  pop: #按照索引删除,不添加索引时默认删除最后一个元素,有返回值,返回删除的元素
  remove #按照元素去删除
  clear #清空列表内容
  del #删除列表 del list
  #切片删除 del list[:3] del list[:3:2]

 1 #pop按照索引删除,不添加索引时默认删除最后一个元素,有返回值,返回删除的元素
 2 
 3 print(list2.pop(2)) #4
 4 print(list2)    #[1, 2, ‘blue‘, [‘see‘, ‘eggs‘, 8, 2, 3]]
 5 list2[-1].pop(1)
 6 print(list2)    #[1, 2, 4, ‘blue‘, [‘see‘, 8, 2, 3]]
 7 l3 = [1, 2, [1,l,r], "kk",{"name":"ll","age":20}]
 8 l3[4].pop("name")   #[1, 2, 4, ‘kk‘, {‘age‘: 20}]
 9 print(l3)
10 
11 print(l3.remove(1)) #None
12 print(l3)   #[2, 4, ‘kk‘, {‘name‘: ‘ll‘, ‘age‘: 20}]
13 l3.remove("kk")
14 print(l3)   #[1, 2, 4, {‘age‘: 20, ‘name‘: ‘ll‘}]
15 l3[2].remove(1)
16 print(l3)   #[1, 2, [‘l‘, ‘r‘], ‘kk‘, {‘age‘: 20, ‘name‘: ‘ll‘}]
17 #clear
18 l3.clear()
19 print(l3)   #[]
20 l3[4].clear()
21 print(l3)   #[1, 2, 4, ‘kk‘, {}]
22 del l3
23 print(l3)   #[]
24 del l3[:2]
25 print(l3)   #[[‘1‘,‘l‘,‘r‘], "kk",{"name":"ll","age":20}]

改:

  赋值 #按照索引去改 list[1] = ‘re‘
  #按照切片去改 list[:6] = ‘ashlfkhdguiwe‘
    迭代的去添加

 1 l3[1] = "tt"
 2 print(l3)   #[1, ‘tt‘, [‘1‘, ‘l‘, ‘r‘], ‘kk‘, {‘age‘: 20, ‘name‘: ‘ll‘}]
 3 l3[2][1] = 6
 4 print(l3)   #[1, ‘tt‘, [‘1‘, 6, ‘r‘], ‘kk‘, {‘age‘: 20, ‘name‘: ‘ll‘}]
 5 l3[4][1] = "hobby"
 6 print(l3)   #[1, 2, [‘1‘, ‘l‘, ‘r‘], ‘kk‘, {‘name‘: ‘ll‘, 1: ‘hobby‘, ‘age‘: 20}]
 7 
 8 l3[0:2] = lkjhgf
 9 print(l3)   #[‘l‘, ‘k‘, ‘j‘, ‘h‘, ‘g‘, ‘f‘, [‘1‘, ‘l‘, ‘r‘], ‘kk‘, {‘age‘: 20, ‘name‘: ‘ll‘}]
10 l3[0:3] = [9,8,7,6,5]
11 print(l3)   #[9, 8, 7, 6, 5, ‘kk‘, {‘age‘: 20, ‘name‘: ‘ll‘}]

查:

  #可以按照索引,切片,步长去查
  #可以按照for循环去查

1 print(list1[:2])    #[1, 2]
2 print(list1[:6:2])  #[1, 3, ‘blue‘]
3 print(list1[5:7])   #[[‘see‘, ‘eggs‘, 8, 9, 3], ‘green‘]
4 print(list1[-1:-5:-1])  #[2, ‘green‘, [‘see‘, ‘eggs‘, 8, 9, 3], ‘blue‘]
5 print(list1[5][2])  #8
6 print(list1[5][1:3])    #[‘eggs‘, 8]

列表的其他方法

 1 #sort排序
 2 print(list4.sort()) #None
 3 print(list4)    #[1, 1, 3, 5, 6, 7, 9]
 4 
 5 #排序反转
 6 list4.sort(reverse=True)
 7 print(list4)    #[9, 7, 6, 5, 3, 1, 1]
 8 #reveres反序
 9 list4.reverse()
10 print(list4.reverse())  #None
11 print(list4)    #[1, 7, 9, 6, 3, 5, 1]
12 
13 #查看列表长度
14 print(len(list4))   #7
15 #统计
16 print(list4.count(1))   #2
17 #通过元素查找索引
18 print(list4.index(5))   #1
19 
20 #join用字符串做一个连接符,链接可迭代对象中的每一个元素,形成一个新的字符串,使用时,列表里必须是字符串,数字无法进行拼接
21 list5 = ["ll",kk,jj]
22 print(...join(list5))

列表的嵌套

  在列表中再嵌套一个嵌套

list6 = [1,2,3,[1,2,3,[1,2,3]]]

二、元组

  元组是用来存储的,元组不可以增、删、改只能查找

1 tuple1 = (1,2,3,4)
2 print(tuple1[1])    #2

元组里可以使用以下几个方法:

1 count    #统计字符在列表的出现次数
2 len        #查看元组的长度
3 index    #通过元素去找索引

range:

可以当成一个数字列表,范围可以自己设定     顾首不顾尾,可以加步长

 

以上是关于4-列表和元组的主要内容,如果未能解决你的问题,请参考以下文章

第4课 列表和元组

Python之列表和元组

请问列表和元组.怎么学.我看了半天没看懂怎么用,这个有啥用,求解谢谢

列表和元组核心办法

列表和元组操作

Python 内置数据结构列表和元组