python基礎之列表(list)

來源:互聯網
上載者:User

標籤:img   python   div   元素   長度   插入   因此   9.png   分享圖片   

本文主要討論python中列表的性質和列表的一些內建方法。

一.列表的定義和性質1.列表的定義:

列表是python中的內建內的一種,在python中的類的關鍵字是list.列表的定義如下:

li=[12.‘hello‘,344,[12,23,‘hshs‘]]

列表是由[]標誌的。列表中的元素用“,”分隔開.列表的元素可以是數字,字串,元組,字典。

2.列表的性質(1)列表可以通過索引尋找元素
li=[1,2,3,4]s=li[3]print[s]

列表的索引從0開始,最後一個元素的索引是列表的長度-1.

(2)列表可以通過for和while迴圈遍曆
1 li=[1,2,45,45]2 s=len(li)3 i=04 for item in li:5     print(item)6 while i<s:7     print(li[i])8     i=i+1

列表是有序的,因此可以由while迴圈遍曆(字典是無序的,因此不能用while迴圈遍曆)。當然,for迴圈遍曆也是支援的。

(3)列表中的元素可以是基本資料,即資料,字串,列表,字典,元組。(4)列表可以進行切片操作
1 li=[12,34,56,67,89]2 li1=li[2:4]3 print(li1)

列表可以通過切片取出列表中的元素,切片的索引範圍是左閉右開。除了可以查詢之外,也可以通過列表切片修改列表元素

(5)列表的元素允許修改
1 li=[23,45,67,90]2 li[2]=1003 print(li)4 li[0:3]=[11,21,23]5 print(li)

列表的元素可以修改,既可以通過索引修改,也可以通過切片修改

(6)列表中的元素允許刪除

列表中的元素,可以通過del li[i]刪除,也可以通過listl類提供的方法刪除。方法會在後面討論,此處只說del的刪除方式。

1 li=[45,67,90,‘defde‘,True,‘huebfur‘]2 del li[0]3 print(li)4 del li[0:3]5 print(li)

del既可以針對索引刪除,也可以針對切片刪除。

(7)列表與字串之間的轉換

列表與字串可以相互轉換。字串轉列表相對比較簡單,可以直接轉換:

s=‘hello‘s1=list(s)print(s1)

將字串轉為列表,則字串中的每一個字元變成列表中的一個元素。

列錶轉字串就不能直接轉了,因為如果直接轉會將列表的"[]"標誌符也作為字串的一部分。列錶轉字串,我們只能自己寫一個函數來轉化:

1 li=[123,‘sre‘,567,True,‘defe‘]2 s=‘‘3 for iltm in li:4     s=s+str(iltm)5 print(s)

如果列表中的元素只有字串,則可以通過join函數來將列錶轉為字串:

1 li=[‘hello‘,‘dhuewu‘,‘cbureuvr‘]2 s=‘‘.join(li)3 print(s)
(8)補充:字串一旦建立後,不可再修改

字串在python中是一個常量(在其他語言中也是這樣),所以一旦字串被建立,就不可再修改,如果要修改字串,相當於是對該字串做了一份複製,因此修改後的字串需要另外一個變數來接收,修改操作對原字串是無效的,而列表的修改操作則是針對原列表操作,因此無需另外一個變數來接收。

1 s=‘helloworld‘ #原字串2 s1=s.upper()#將字串變為大寫3 print(s1)4 print(s)

代碼執行效果:

下面是在列表末尾新增一個元素:

1 li=[1,2,3,4,5,6]2 li1=li.append(9)3 print(li)4 print(li1)

這是他的執行結果:

由上可以看出,對列表的所有操作都是直接針對原始列表進行的。新的變數接收的值是根據方法的傳回值來定的。

3.列表類的方法(1)append(value):

append函數在列表的末尾添加一個元素

(2)clear():

清空列表

(3)copy():

複製列表(淺拷貝)

(4)count(value):

計算value在列表中出現的次數。

(5)extend(iterable):

該函數傳入參數一個可迭代對象(可以用for迴圈的便是一個可迭代對象),然後把可迭代對象裡面的元素加入列表末尾。需要注意該方法與append方法的區別,如果append函數傳入一個可迭代對象,那麼會把這個可迭代對象作為一個整體元素加入列表,而extend是把可迭代對象的每一個元素分別加入列表:

1 li=[1,2,3]2 li1=li.copy()3 li.append(‘hello‘)4 li1.extend(‘hello‘)5 print(li)6 print(li1)

下面是執行結果:

(6)index(value,strat=None,end=None):

該方法判斷列表中尋找元素第一次出現的索引(從左往右),該方法有兩個預設參數,可以指定尋找的範圍。若列表中不存在該值,會報錯

 (7)insert(index,value):

在列表指定的位置插入新的值

(8)pop(index=None):

刪除列表中的元素。預設是刪除列表的最後一個元素。該方法有一個預設參數可以用來指定刪除的位置。

(9)remove(value):

刪除列表中第一次出現的value值(從左向右)。

(10)reverse():

將列表翻轉。即第一個元素變為倒數第一個元素,第二個元素變為倒數第二個元素...

(11)sort(key=None,reverse=False):

將列表元素排序,預設是按照升序,如果是降序,則將reverse設定為true,key值後續部門再討論,此處略過。

 

python基礎之列表(list)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.