列表常用操作

  1. """
  2. 1 创建列表
  3. """
  4. a = [1,2,3,4,'你好']
  5. print(a) #>>>[1,2,3,4,'你好']
  6. """
  7. 2 向列表中添加元素
  8. """
  9. a = [1,2,3,4]
  10. a.append(5) #将元素增加到列表的末尾,并且一次只能添加一个元素
  11. print(a) #>>>[1,2,3,4,5]
  12. a = [1,2,3,'你好'] #extend()方法可以添加多个元素,但是必须以列表的形式添加
  13. a.extend([4,'bye']) #>>>[1, 2, 3, '你好', 4, 'bye']
  14. print(a)
  15. a = [1,2,3,4]
  16. a.insert(2, 'four') # 插队的方法添加元素 insert(index,object)
  17. print(a) #>>>[1, 2, 'four', 3, 4]
  18. a = [0 for _ in range(20)] #创建一个20个0的列表
  19. """
  20. 3 向列表中删除元素
  21. """
  22. a = ['你好','py','tho','n']
  23. a.remove('你好') #需要知道列表中已知的元素,才可以进行对应的删除
  24. print(a) #>>>['py', 'tho', 'n']
  25. a = ['你好','py','tho','n']
  26. del a[2] #del可以删除指定位置的元素
  27. print(a) #>>>['你好', 'py', 'n']
  28. del a #后面跟着列表名可以删除整个列表
  29. a = ['你好','py','tho','n']
  30. a.pop(3) #弹出指定的元素
  31. print(a) #>>>['你好', 'py', 'tho']
  32. a.pop() #若无指定的index则默认弹出最后一个元素
  33. print(a) #>>>['你好', 'py']
  34. a.pop(len(a) - 1)
  35. """
  36. 4 从列表中获取元素
  37. """
  38. a = [1,'你好','py','tho','n',[2,3]]
  39. print(a [5]) #直接方括号内带上index类似于c语音的数组
  40. a = [1,'你好','py','tho','n',[2,3]] #列表的切片方法获取部分数组
  41. print(a[1:4]) #>>>['你好', 'py', 'tho']
  42. print(a[:2]) #>>>[1, '你好']
  43. print(a[1:]) #>>>['你好', 'py', 'tho', 'n', [2, 3]]
  44. print(a[:]) #>>>[1, '你好', 'py', 'tho', 'n', [2, 3]]
  45. a = [1,'你好','py','tho','n',[2,3]]#访问列表中的列表元素
  46. print(a[5][1]) #>>>3
  47. """
  48. 5 列表反转
  49. """
  50. a = [1,'你好','py','tho','n',[2,3]]
  51. print(a[::-1]) #>>>[[2, 3], 'n', 'tho', 'py', '你好', 1]
  52. print(a) #>>>[1, '你好', 'py', 'tho', 'n', [2, 3]],没有改变列表本身
  53. a = [1,'你好','py','tho','n',[2,3]]
  54. a.reverse() #需要注意的是,reverse()是直接对列表本身做了翻转
  55. print(a) #>>>[[2, 3], 'n', 'tho', 'py', '你好', 1]
  56. """
  57. 6 列表的拼接与重复
  58. """
  59. a = [1,'你好','py','tho','n',[2,3]]
  60. b=[4,5]
  61. print(a+b) #>>>[1, '你好', 'py', 'tho', 'n', [2, 3], 4, 5]
  62. a *= 2
  63. print(a) #>>>[1, '你好', 'py', 'tho', 'n', [2, 3], 1, '你好', 'py', 'tho', 'n', [2, 3]]
  64. """
  65. 7 元素是否存在于列表中的判断
  66. """
  67. a = [1,'你好','py','tho','n',[2,3]]
  68. print(1 in a) #>>>True
  69. print(7 in a) #>>>False
  70. print(1 not in a) #>>>False
  71. print(7 not in a) #>>>True
  72. #in 和 not in 对于二层的列表元素判断也好使
  73. print(2 in a[5]) #>>>True
  74. print(3 in a[5]) #>>>True
  75. """
  76. 8 遍历列表
  77. """
  78. # 通过循环用下标遍历列表元素
  79. for index in range(len(list1)):
  80. print(list1[index])
  81. # 通过for循环遍历列表元素
  82. for elem in list1:
  83. print(elem)
  84. # 通过enumerate函数处理列表之后再遍历可以同时获得元素索引和值
  85. for index, elem in enumerate(list1):
  86. print(index, elem)
  87. """
  88. 9 其余的操作
  89. """
  90. a = ['你','你',1,2,1,'n','n'] #count可以返回元素出现的次数
  91. print(a.count('你')) #>>>2
  92. len(a) #可以查询列表的大小
  93. a = [1,2,3,4] #index可以返回参数在列表中出现位置
  94. print(a.index(2)) #>>>1
  95. a = [3,1,34,325,1,2,6] #sort可以将列表进行排序
  96. a.sort()
  97. print(a) #>>>[1, 1, 2, 3, 6, 34, 325]
  98. list1 = ['orange', 'apple', 'zoo', 'internationalization', 'blueberry']
  99. list2 = sorted(list1) #根据字母表顺序进行排序
  100. # sorted函数返回列表排序后的拷贝不会修改传入的列表
  101. # 函数的设计就应该像sorted函数一样尽可能不产生副作用