Python內置的有序集合:list和tuple是,一個可變,一個不可變


Python內置的一種數據類型是列表:list#注釋list是一種可變的有序的集合,可以隨時添加和刪除其中的元素

list里面的元素可以是不同的數據類型譬如整數、字符串、嵌套列表

 

 

len( )函數:獲得list元素的個數

classmates.append('元素')  函數:追加新元素至list列表尾部

classmates.insert(1, '元素')函數:通過索引得方式將新的元素追加至指定位置

 

classmates[ ]: 通過索引的方式,問每一個位置的元素

pop(i)函數    : 要刪除指定位置的元素,用,其中i是索引位置

classmates[ 1]= 'Sarah' :直接賦值給對應的索引位置替換元素

 

 

案例1:比如列出班里所有同學的名字,就可以用一個list表示,如下:classmates變量,就是一個list:

   >>> classmates = ['Michael', 'Bob', 'Tracy']

 >>> classmates

['Michael', 'Bob', 'Tracy']

>>> len(classmates) #列出元素個數
3


#用索引來訪問list中每一個位置的元素,記得索引是從0開始得
#當索引超出了范圍時,Python會報一個IndexError錯誤,所以,要確保索引不要越界,可以直接獲取最后一個元素:classmates[-1] 依次類推倒着獲取。
>>> classmates[0] 'Michael' >>> classmates[1] 'Bob' >>> classmates[2] 'Tracy' >>> classmates[3]
>>> classmates[-1]
'Tracy'

#追加新元素到末尾

>>> classmates.append('Adam') >>> classmates ['Michael', 'Bob', 'Tracy', 'Adam']
#通過索引得方式將新的元素插入到指定的位置,比如索引號為1的位置
>>> classmates.insert(1, 'Jack') >>> classmates ['Michael', 'Jack', 'Bob', 'Tracy', 'Adam']
#要刪除指定位置的元素,用pop(i)方法,其中i是索引位置:
>>> classmates.pop(1) 'Jack' >>> classmates ['Michael', 'Bob', 'Tracy']

#將指定元素替換成別的元素,可以直接賦值給對應的索引位置即可

>>> classmates[1] = 'Sarah'
>>> classmates ['Michael', 'Sarah', 'Tracy']

#list里面的元素的數據類型也可以不同,list元素也可以是另一個list
#要拿到'php'可以寫p[1]或者s[2][1],因此s可以看成是一個二維數組,類似的還有三維、四維……數組,不過很少用到。


#要注意s只有4個元素,其中s[2]又是一個list,如果拆開寫就更容易理解了


>>> L = ['Apple', 123,
['asp', 'php'],True]
>>> len(s) 4 >>> p = ['asp', 'php'] >>> s = ['python', 'java', p, 'scheme']

#空數組

>>> L = []
>>> len(L)
0

Python中另一種有序列表叫元組:tuple:#tuple和list非常類似,但是tuple不允許增刪改等一系列的修改在定義的時候,tuple的元素就必須被確定下來

 

#比如同樣是列出同學的名字

#索引指定位置元素與list的方式相同

#只有1個元素的tuple定義時必須加一個逗號,,來消除歧義:

 

>>> classmates = ('Michael', 'Bob', 'Tracy')

>>> classmates = [i]

 

 ##最后來看一個“可變的”tuple:表面上看,tuple的元素確實變了,但其實變的不是tuple的元素,而是list的元素

 >>> t = ('a', 'b', ['A', 'B'])

 >>> t[2][0] = 'X'

>>> t[2][1] = 'Y' >>> t ('a', 'b', ['X', 'Y']) 

 

 

 
        

 


list和tuple是Python內置的有序集合,一個可變,一個不可變。根據需要來選擇使用它們。
 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

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



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