Python基礎(三)之List型別

2021-07-10 06:32:25 字數 3121 閱讀 6040

1、建立list

python內建的一種資料型別是列表:list。list是一種有序的集合,可以隨時新增和刪除其中的元素。相當於我們在c語言中說的陣列。

list是數學意義上的有序集合,也就是說,list中的元素是按照順序排列的。

構造list非常簡單,按照上面的**,直接用 [ ] 把list的所有元素都括起來,就是乙個list物件。通常,我們會把list賦值給乙個變數,這樣,就可以通過變數來引用list:

>>> classmates = ['michael', 'bob', 'tracy']

>>> classmates # 列印classmates變數的內容

['michael', 'bob', 'tracy']

由於python是動態語言,所以list中包含的元素並不要求都必須是同一種資料型別,我們完全可以在list中包含各種資料:

2、按照索引順序訪問list

list中的元素的索引從 0 開始,也就是說,第乙個元素的索引是0,第二個元素的索引是1,以此類推。

舉個例子:

indexerror意思就是索引超出了範圍,因為上面的list只有3個元素,有效的索引是 0,1,2。

所以,使用索引時,千萬注意不要越界。

3、按照索引倒序訪問list

倒序訪問的情景也有很多,比如說我們要在乙個list中找到最後乙個數,但是這個陣列內有很多元素,乙個乙個順序數下去很浪費時間,那麼怎麼直接輸出最後乙個元素呢?

這時候就要用到倒序訪問,也就是把最後乙個元素的索引記作「-1」,那麼倒數第二個元素的索引就是「-2」,以此類推下去。下面來看例項:

4、向list中新增新元素

>>> l = ['adam', 'lisa', 'bart']

>>>

print l

['adam', 'lisa', 'bart', 'paul']

ap**pend()總是把新的元素新增到 list 的尾部。**

那麼問題來了,如果說這個list是按照裡面每位同學的成績排名的呢,要加進來的這位同學是滿分要加在第乙個怎麼辦?

方法是用list的 insert()方法,它接受兩個引數,第乙個引數是索引號,第二個引數是待新增的新元素:

>>> l = ['adam', 'lisa', 'bart']

>>> l.insert(0, 'paul')

>>>

print l

['paul', 'adam', 'lisa', 'bart']

l.insert(0, 『paul』) 的意思是,』paul』將被新增到索引為 0 的位置上(也就是第乙個),而原來索引為 0 的adam同學,以及後面的所有同學,都自動向後移動一位。

命令列中實驗效果如下:

5、從list中刪除元素

前面新加進來的那位paul同學又要轉走了,我們要把他從list中除去,也有兩種方法:

如果paul同學排在最後乙個,我們可以用list的pop()方法刪除:

>>> l = ['adam', 'lisa', 'bart', 'paul']

>>> l.pop()

'paul'

>>>

print l

['adam', 'lisa', 'bart']

pop()方法總是刪掉list的最後乙個元素,並且它還返回這個元素,所以我們執行 l.pop() 後,會列印出 『paul』。

如果paul同學不是排在最後乙個怎麼辦?比如paul同學排在第三:

>>> l = ['adam', 'lisa', 'paul', 'bart']
要把paul踢出list,我們就必須先定位paul的位置。由於paul的索引是2,因此,用 pop(2)把paul刪掉:

>>> l.pop(2)

'paul'

>>>

print l

['adam', 'lisa', 'bart']

6、替換list中的元素假設現在班裡仍然是3名同學:

>>> l = ['adam', 'lisa', 'bart']
現在,bart同學要轉學走了,碰巧來了乙個paul同學,要更新班級成員名單,我們可以先把bart刪掉,再把paul新增進來。

另乙個辦法是直接用paul把bart給替換掉:

>>> l[2] = 'paul'

>>>

print l

l = ['adam', 'lisa', 'paul']

對list中的某乙個索引賦值,就可以直接用新的元素替換掉原來的元素,list包含的元素個數保持不變。

由於bart還可以用 -1 做索引,因此,下面的**也可以完成同樣的替換工作:

>>> l[-1] = 'paul'
下面是我實驗驗證的截圖:

最後,關於list的插入刪除替換元素的操作就到這裡了。了解到這一節就感受到了python的簡潔!!!在其他語言中很複雜的操作在這裡一句話就可以搞定!!!

我主要是在慕課網上學習,然後順便把筆記和實證搬到部落格上來,如果有錯誤請指出哈!

python基礎 之list列表

python提供了乙個被稱為列表的資料型別,他可以儲存乙個有序的元素集合。記住 乙個列表可以儲存任意大小的資料集合。列表是可變物件,有別於字串str類,str類是不可變物件。list1 list 建立乙個空列表 list2 list 2,3,4 建立列表,包含元素2,3,4 list3 list r...

Python基礎 list 列表

建立列表 lst 1,2.34,bb true 檢視列表中的資料 print lst 檢視列表的資料型別 print type lst 通過索引獲取列表中的元素 索引從0開始 num lst 1 print num ret lst 4 print ret length len lst print l...

Python基礎篇之List六 替換元素

假設現在班裡仍然是3名同學 l adam lisa bart 現在,bart同學要轉學走了,碰巧來了乙個paul同學,要更新班級成員名單,我們可以先把bart刪掉,再把paul新增進來。另乙個辦法是直接用paul把bart給替換掉 l 2 paul print l l adam lisa paul ...