Python 列表的基本操作介紹
1、向List中添加元素的方法
1.1 Python append()方法添加元素
append()
方法用于在列表的末尾追加元素,該方法的語法格式如下:
listname.append(obj)
其中,listname
表示要添加元素的列表;obj
表示到添加到列表末尾的數(shù)據(jù),它可以是單個元素,也可以是列表、元組等。
1.2 Python extend()方法添加元素
extend() 和 append() 的不同之處在于:extend()
不會把列表或者元祖視為一個整體,而是把它們包含的元素逐個添加到列表中。
extend() 方法的語法格式如下:
listname.extend(obj)
其中,listna
me 指的是要添加元素的列表;obj
表示到添加到列表末尾的數(shù)據(jù),它可以是單個元素,也可以是列表、元組等。
示例:
l = ['Python', 'C++', 'Java'] # 追加元素 l.extend('C') print(l) # 追加元組,元祖被拆分成多個元素 t = ('JavaScript', 'C#', 'Go') l.extend(t) print(l) # 追加列表,列表也被拆分成多個元素 l.extend(['Ruby', 'SQL']) print(l)
運行結(jié)果:
['Python', 'C++', 'Java', 'C']
['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go']
['Python', 'C++', 'Java', 'C', 'JavaScript', 'C#', 'Go', 'Ruby', 'SQL']
1.3 Python insert()方法插入元素
append()
和 extend()
方法只能在列表末尾插入元素,如果希望在列表中間某個位置插入元素,那么可以使用 insert() 方法。
insert() 的語法格式如下:
listname.insert(index,obj)
其中,index
表示指定位置的索引值。insert()
會將 obj
插入到 listname
列表第 index
個元素的位置。 當(dāng)插入列表或者元祖時,insert() 也會將它們視為一個整體,作為一個元素插入到列表中,這一點和 append()
是一樣的。
2、向List中刪除元素的方法
在 Python 列表中刪除元素主要分為以下 3 種場景:
- 根據(jù)目標(biāo)元素所在位置的索引進(jìn)行刪除,可以使用 del 關(guān)鍵字或者
pop()
方法; - 根據(jù)元素本身的值進(jìn)行刪除,可使用列表(
list
類型)提供的remove()
方法; - 將列表中所有元素全部刪除,可使用列表(
list
類型)提供的clear()
方法。
2.1 del:根據(jù)索引值刪除元素
del 可以刪除列表中的單個元素,格式為:
del listname[index]
其中,listname
表示列表名稱,index
表示元素的索引值。 del
也可以刪除中間一段連續(xù)的元素,
格式為:
del listname[start : end]
2.2 pop():根據(jù)索引值刪除元素
Python pop()
方法用來刪除列表中指定索引處的元素,
具體格式如下:
listname.pop(index)
其中,listname 表示列表名稱,index 表示索引值。如果不寫 index
參數(shù),默認(rèn)會刪除列表中的最后一個元素,類似于數(shù)據(jù)結(jié)構(gòu)中的“出棧”操作。
大部分編程語言都會提供和 pop()
相對應(yīng)的方法,就是 push()
,該方法用來將元素添加到列表的尾部,類似于數(shù)據(jù)結(jié)構(gòu)中的“入棧”操作。
但是 Python 是個例外,Python
并沒有提供 push()
方法,因為完全可以使用 append()
來代替 push()
的功能。
2.3 remove():根據(jù)元素值進(jìn)行刪除
除了 del 關(guān)鍵字,Python
還提供了 remove()
方法,該方法會根據(jù)元素本身的值來進(jìn)行刪除操作。
需要注意的是,remove()
方法只會刪除第一個和指定值相同的元素,而且必須保證該元素是存在的,否則會引發(fā) ValueError 錯誤。
nums = [40, 36, 89, 2, 36, 100, 7] #第一次刪除36 nums.remove(36) print(nums) #第二次刪除36 nums.remove(36) print(nums) #刪除78 nums.remove(78) print(nums)
運行結(jié)果:
[40, 89, 2, 36, 100, 7]
[40, 89, 2, 100, 7]
Traceback (most recent call last):
File "C:\Users\mozhiyan\Desktop\demo.py", line 9, in <module>
nums.remove(78)
ValueError: list.remove(x): x not in list
最后一次刪除,因為 78 不存在導(dǎo)致報錯,所以我們在使用 remove()
刪除元素時最好提前判斷一下。
2.4 clear():刪除列表所有元素
Python clear()
用來刪除列表的所有元素,也即清空列表,
請看下面的代碼:
url = list("http://c.biancheng.net/python/") url.clear() print(url)
運行結(jié)果:
[]
3、list列表修改元素
3.1 修改單個元素
修改單個元素非常簡單,直接對元素賦值即可。
請看下面的例子:
nums = [40, 36, 89, 2, 36, 100, 7] nums[2] = -26 #使用正數(shù)索引 nums[-3] = -66.2 #使用負(fù)數(shù)索引 print(nums)
運行結(jié)果:
[40, 36, -26, 2, -66.2, 100, 7]
使用索引得到列表元素后,通過=賦值就改變了元素的值。
3.2 修改一組元素
Python
支持通過切片語法給一組元素賦值。在進(jìn)行這種操作時,如果不指定步長(step 參數(shù)),Python
就不要求新賦值的元素個數(shù)與原來的元素個數(shù)相同;這意味,該操作既可以為列表添加元素,也可以為列表刪除元素。
示例:
nums = [40, 36, 89, 2, 36, 100, 7] #修改第 1~4 個元素的值(不包括第4個元素) nums[1: 4] = [45.25, -77, -52.5] print(nums)
運行結(jié)果:
[40, 45.25, -77, -52.5, 36, 100, 7]
4、list列表查找元素
4.1 index() 方法
index()
方法用來查找某個元素在列表中出現(xiàn)的位置(也就是索引),如果該元素不存在,則會導(dǎo)致 ValueError
錯誤,所以在查找之前最好使用 count()
方法判斷一下。
index() 的語法格式為:
listname.index(obj,start,end)
其中,listname
表示列表名稱,obj
表示要查找的元素,start
表示起始位置,end
表示結(jié)束位置。
4.2 count()方法
count()
方法用來統(tǒng)計某個元素在列表中出現(xiàn)的次數(shù),
基本語法格式為:
listname.count(obj)
其中,listname
代表列表名,obj
表示要統(tǒng)計的元素。
如果 count()
返回 0,就表示列表中不存在該元素,所以 count()
也可以用來判斷列表中的某個元素是否存在。
5、總結(jié)
Python中列表是可修改類型,在程序運行過程中可以對列表的元素進(jìn)行插入和刪除運算。但是元組卻是不可修改類型,要對其進(jìn)行更改操作可以通過再構(gòu)造一個新的元組替換舊的元組,來實現(xiàn)元素的插入和刪除。
到此這篇關(guān)于Python 列表的基本操作介紹的文章就介紹到這了,更多相關(guān)Python 列表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python實現(xiàn)人性化顯示金額數(shù)字實例詳解
在本篇內(nèi)容里小編給大家整理了關(guān)于python實現(xiàn)人性化顯示金額數(shù)字實例內(nèi)容,需要的朋友們可以參考下。2020-09-09Python Barbershop實現(xiàn)照片換發(fā)型功能
這篇文章主要為大家介紹了一個開源項目(Barbershop),可以將照片中的發(fā)型更換成另一個,文中實現(xiàn)過程講解詳細(xì),感興趣的可以學(xué)習(xí)一下2022-01-01pytorch 實現(xiàn)cross entropy損失函數(shù)計算方式
今天小編就為大家分享一篇pytorch 實現(xiàn)cross entropy損失函數(shù)計算方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01使用PyQt5設(shè)計GUI實現(xiàn)程序圖形界面設(shè)計
當(dāng)我們學(xué)會如何在pycharm中配置pyqt5設(shè)計GU之后,那么本文來帶你熟悉PyQt5設(shè)計GUI流程并為程序設(shè)計圖形界面,設(shè)計一個屬于自己的GUI2021-08-08Python在Matplotlib圖中顯示中文字體的操作方法
這篇文章主要介紹了Python在Matplotlib圖中顯示中文字體的方法,本篇主要針對在Ubuntu系統(tǒng)中,matplotlib顯示不了中文的問題,尤其是在無法安裝系統(tǒng)字體的情況下,解決Python繪圖時中文顯示的問題。需要的朋友可以參考下2019-07-07