有關Python中列表(list)的一些相關知識


1.基本知識

列表是由一系列按特定順序排列的元素組成。(列表是有序的!)

可以將任何數據加入列表中,元素之間可以有關系,也可以沒有任何關系。

[]表示列表,中間用,隔開

 

列表可以正序輸入也可以逆序輸入

 

 

 2.有關列表的一些相關操作

2.1    L.append('var') #追加元素var

 

 2.2    L.insert(2,'index') #在2之后插入元素index

 

 2.3    L.remove('var') #刪除第一次出現的該元素

 

 2.4    L.pop() #返回最后一個元素,並從list中刪除之

 

 2.5   L.count(1) #該元素在列表中出現的個數

 

 2.6   L.index(1) #該元素的位置,無則拋異常

 

 2.7   L.extend(list) #追加list,即合並list到L上

2.8   L.sort() #排序

 

 2.9   L.reverse() #倒序,並不會進行排序

 

 

3.列表的操作符   :  *   +  del

 4.列表的切片操作

  切片適用於列表、元組、字符串、range對象等序列類型,但作用於列表時功能最強大。

  切片可以截取列表中的任何部分,得到一個新列表,也可通過切片來增加、修改和刪除列表的元素。

   切片的基本形式:list_name[數字1:數字2:數字3]

數字1:切片開始位置(默認為0)

數字2:切片截止(但不包含)位置(默認為列表長度)。

數字3:切片的步長(默認為1),當步長省略時可以順便省略最后一個冒號。

 列表切片操作舉例:

 

 

>>> aList = list(range(3, 18, 2))

>>> aList[::]  #返回包含所有元素的新列表

[3, 4, 5, 6, 7, 9, 11, 13, 15, 17]

 

 

>>> aList[::-1] #逆序的所有元素

[17, 15, 13, 11, 9, 7, 6, 5, 4, 3]

 

 

>>> aList[::2] #偶數位置,隔一個取一個

[3, 5, 7, 11, 15]

 

 

>>> aList[1::2] #奇數位置,隔一個取一個

[4, 6, 9, 13, 17]

 

>>> aList[3::] #從下標3開始的所有元素

[6, 7, 9, 11, 13, 15, 17]

 

 

>>> aList[3:6] #下標在[3, 6)之間的所有元素

[6, 7, 9]

 

 

>>> aList[0:100:1]#前100個元素,自動截斷

[3, 4, 5, 6, 7, 9, 11, 13, 15, 17]

 

 

>>> aList[100:] #下標100之后的所有元素,自動截斷

[ ]

 

 

>>> aList[100] #直接使用下標訪問會發生越界

IndexError: list index out of range

 

>>> aList = [3, 5, 7]

>>> aList[len(aList):] = [9] #在尾部追加元素

>>> aList

[3, 5, 7, 9]

 

 

>>> aList[:3] = [1, 2, 3] #替換前3個元素

>>> aList

[1, 2, 3, 9]

 

 

>>> aList[:3] = [] #刪除前3個元素

>>> aList

[9]

 

>>> aList = list(range(10))

>>> aList

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

 

>>> aList[::2] = [0]*5 #替換偶數位置上的元素

>>> aList

[0, 1, 0, 3, 0, 5, 0, 7, 0, 9]

 

 

>>> aList[::2] = [0]*3 #切片不連續,兩側元素個數必須一樣多 報錯!

 

>>> aList = [3,5,7,9,11]

>>> del aList [ : 3] #刪除前3個元素

>>> aList

[9, 11]

 

 

>>> aList = [3,5,7,9,11]

>>> del aList [: : 2] #刪除偶數位置上的元素

>>> aList

[5, 9]

 

注意:

 

已知alst=list(range(10))

則alst[:-2]= ?

[0,1,2,3,4,5,6,7]

 

 

alst[-1:-5]= ?

[ ]

 

 

alst[-5:-1]= ?

[5, 6, 7, 8]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM