最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中列表的基本操作匯總

 更新時(shí)間:2022年10月11日 16:48:39   作者:遇安.112  
這篇文章主要介紹了python中列表的一些基本操作,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

1、列表的創(chuàng)建與遍歷

與整數(shù)和字符串不同,列表要處理一組數(shù)據(jù)。因此,列表必須通過顯式的數(shù)據(jù)賦值才能生成,簡單將一個(gè)列表賦值給另一個(gè)列表不會(huì)生成新的列表對象,只會(huì)對原有列表生成一個(gè)新的引用。

#創(chuàng)建列表
list =[1,2,3,4,5]
list2=list
print(list==list2)# True 就算新建一個(gè)列表,然后將原有的值賦值給新的列表。新的列表和原列表還是指向的同一個(gè)地址
list[0]=0
print(list,list2) #修改list列表的同時(shí)也修改了list2,因?yàn)閘ist和list2都是指向的同一個(gè)地址
print("====================================")
length=len(list)#獲取列表長度
 
#遍歷
i=0
#為了方便后續(xù)操作的觀察,這里采用不換行輸出
while(i<length):
    if (i < length-1):
        print(list[i], end=',')
    else:
        print(list[i],end='')
        print()
    i+=1
print("====================================")
for x in list:
    if (x <length):
        print(x, end=',')
    else:
        print(x,end='')
        print()
   # print(x)
print("====================================")

2、添加元素

列表可以使用append()、extend()或insert()方法來添加元素

2.1、append()方法

在列表末尾添加新的元素

語法格式:list.append(obj)

其中,list表示列表,obj表示添加到列表末尾的對象

#在列表末尾添加元素
list.append(6)
print(list) ##[0, 2, 3, 4, 5, 6] 

2.2、extend()方法

在列表末尾一次性添加另一個(gè)序列中的多個(gè)值(用新列表擴(kuò)展原來的列表)

語法格式:list.extend(seq)

其中,list表示列表,seq表示添加到列表末尾的序列

#在列表末尾一次性添加另一個(gè)序列中的多個(gè)值
list3=[7,8]
list.extend(list3)
print(list) #[0, 2, 3, 4, 5, 6, 7, 8]

2.3、insert()方法

將指定對象插入到列表的指定位置

語法格式:list.insert(index,obj)

其中,list表示列表,index表示插入的索引位置,obj表示插入列表中的對象 

#將元素添加到指定位置,例:在索引位置為1的地方插入1
list.insert(1,1)
print(list) #[0, 1, 2, 3, 4, 5, 6, 7, 8]

3、刪除元素

在列表中,刪除元素的常用方法有:del命令、pop()方法和remove()方法

3.1、del命令

根據(jù)索引刪除列表中的元素

#根據(jù)索引刪除元素,例:刪除索引位置為0的元素
del list[0]
print(list) #[1, 2, 3, 4, 5, 6, 7, 8]
 
#使用分片的方式輸出列表中的元素
del list[5:7] #包前不包后,5:7即刪除索引為5、6的元素
print(list) #[1, 2, 3, 4, 5, 8]

3.2、pop()方法

根據(jù)索引刪除列表中的元素,并返回該元素的值

語法格式:list.pop([index])

其中,list表示列表。index表示刪除列表元素的索引值,為可選參數(shù),缺省時(shí)為-1,刪除列表中的最后一個(gè)元素。

#根據(jù)索引刪除列表中的元素,并返回該元素的值
print(list.pop(5)) #8
print(list) #[1, 2, 3, 4, 5]
#如果沒給索引,則默認(rèn)刪除列表最后一個(gè)元素。即彈棧/出棧
# print(list.pop())
# print(list)

3.3、remove()方法

remove()方法只能刪除列表中某個(gè)值的第一個(gè)匹配項(xiàng),如果要?jiǎng)h除所有匹配的元素就需要搭配循環(huán)語句實(shí)現(xiàn)。

語法格式:list.remove(obj)

#刪除某個(gè)值的第一個(gè)匹配值
list.remove(3)
print(list) #[1, 2, 4, 5]

4、分片賦值

分片賦值就是以分片的形式給列表賦值,可以一次為多個(gè)元素賦值

#替換索引從1包括1開始到最后的元素
list[1:]=[3,6,9]
print(list) #[1, 3, 6, 9]

分片賦值還可以在不替換任何原有元素的情況下插入新的元素

#在索引為2的位置插入列表[4,5]
#[2:1]如果后面的1變成2或者更大的數(shù),則會(huì)依次覆蓋/刪除插入位置后面的數(shù)
list[2:1]=[4,5]
print(list) #[1, 3, 4, 5, 6, 9]

分片賦值也可以刪除元素

#刪除元素
num=[1,2,3,4,5,6]
print(num) #[1, 2, 3, 4, 5, 6]
num[1:5]=[] #用空列表替換列表中索引1到索引5(不含)的元素
print(num) #[1, 6]

5、列表排序

將列表中的元素排序的方法有3種,分別是reverse()方法、sort()方法和sorted()函數(shù)

5.1、reverse()方法

將列表中的元素反向存放

語法格式:list.reverse()

#將列表元素反轉(zhuǎn)
list.reverse()
print(list) #[9, 6, 5, 4, 3, 1]

5.2、sort()方法

將列表中的元素進(jìn)行排序(默認(rèn)為升序)

語法格式:list.sort([key=None])[,reverse=False])

其中,list表示列表,key為可選參數(shù),如果指定了該參數(shù),會(huì)使用該參數(shù)的方法進(jìn)行排序。reverse為可選參數(shù),表示是否降序排序,缺省時(shí)為False

#將列表排序(默認(rèn)為升序)
list.sort()
print(list) #[1, 3, 4, 5, 6, 9]
#改為降序排序
list.sort(reverse=True)
print(list) #[9, 6, 5, 4, 3, 1]
 
#按元素長度進(jìn)行排序(默認(rèn)升序)
list4=["hello","P","yt","hon"]
list4.sort(key=len)
print(list4) #['P', 'yt', 'hon', 'hello']
#降序
list4.sort(key=len,reverse=True)
print(list4) #['hello', 'hon', 'yt', 'P']

5.3、sorted()函數(shù)

與sort()方法不同,內(nèi)置函數(shù)sorted()返回新列表,并不對原列表進(jìn)行任何修改

語法格式:sorted(iterable[,key=None][,reverse=False])

其中,iterable表示可迭代對象,如列表。參數(shù)key和reverse的用法與sort()方法中的相同

#內(nèi)置函數(shù)sorted()返回新列表,不對原列表進(jìn)行修改
list5=[5,3,4,2,1]
list5_new=sorted(list5)
print(list5==list5_new) # False 列表地址不一致
print(list5) #原列表不變 [5, 3, 4, 2, 1]
print(list5_new) #新列表按升序排列 [1, 2, 3, 4, 5]
#降序
list6=sorted(list5,reverse=True)
print(list6==list5) #False
print(list6) #[5, 4, 3, 2, 1]

完整代碼

list =[1,2,3,4,5]
list2=list
print(list==list2)# True 就算新建一個(gè)列表,然后將原有的值賦值給新的列表。新的列表和原列表還是指向的同一個(gè)地址
list[0]=0
print(list,list2) #修改list列表的同時(shí)也修改了list2,因?yàn)閘ist和list2都是指向的同一個(gè)地址
print("====================================")
length=len(list)#獲取列表長度
 
#遍歷
i=0
#為了方便后續(xù)操作的觀察,這里采用不換行輸出
while(i<length):
    if (i < length-1):
        print(list[i], end=',')
    else:
        print(list[i],end='')
        print()
    i+=1
print("====================================")
for x in list:
    if (x <length):
        print(x, end=',')
    else:
        print(x,end='')
        print()
   # print(x)
print("====================================")
 
# 添加元素
print("添加元素:")
#在列表末尾添加元素
list.append(6)
print(list) ##[0, 2, 3, 4, 5, 6]
 
#在列表末尾一次性添加另一個(gè)序列中的多個(gè)值
list3=[7,8]
list.extend(list3)
print(list) #[0, 2, 3, 4, 5, 6, 7, 8]
 
#將元素添加到指定位置,例:在索引位置為1的地方插入1
list.insert(1,1)
print(list) #[0, 1, 2, 3, 4, 5, 6, 7, 8]
print("====================================")
 
#刪除元素
print("刪除元素:")
#根據(jù)索引刪除元素,例:刪除索引位置為0的元素
del list[0]
print(list) #[1, 2, 3, 4, 5, 6, 7, 8]
 
#使用分片的方式輸出列表中的元素
del list[5:7] #包前不包后,5:7即刪除索引為5、6的元素
print(list) #[1, 2, 3, 4, 5, 8]
 
#根據(jù)索引刪除列表中的元素,并返回該元素的值
print(list.pop(5)) #8
print(list) #[1, 2, 3, 4, 5]
#如果沒給索引,則默認(rèn)刪除列表最后一個(gè)元素。即彈棧/出棧
# print(list.pop())
# print(list)
 
#刪除某個(gè)值的第一個(gè)匹配值
list.remove(3)
print(list) #[1, 2, 4, 5]
print("====================================")
 
#分片賦值
print("分片賦值:")
#替換索引從1包括1開始到最后的元素
list[1:]=[3,6,9]
print(list) #[1, 3, 6, 9]
 
#在索引為2的位置插入列表[4,5]
#[2:1]如果后面的1變成2或者更大的數(shù),則會(huì)依次覆蓋/刪除插入位置后面的數(shù)
list[2:1]=[4,5]
print(list) #[1, 3, 4, 5, 6, 9]
 
#刪除元素
num=[1,2,3,4,5,6]
print(num) #[1, 2, 3, 4, 5, 6]
num[1:5]=[] #用空列表替換列表中索引1到索引5(不含)的元素
print(num) #[1, 6]
print("====================================")
 
#列表排序
print("排序:")
#將列表元素反轉(zhuǎn)
list.reverse()
print(list) #[9, 6, 5, 4, 3, 1]
 
#將列表排序(默認(rèn)為升序)
list.sort()
print(list) #[1, 3, 4, 5, 6, 9]
#改為降序排序
list.sort(reverse=True)
print(list) #[9, 6, 5, 4, 3, 1]
 
#按元素長度進(jìn)行排序(默認(rèn)升序)
list4=["hello","P","yt","hon"]
list4.sort(key=len)
print(list4) #['P', 'yt', 'hon', 'hello']
#降序
list4.sort(key=len,reverse=True)
print(list4) #['hello', 'hon', 'yt', 'P']
print("---------------------------------------")
 
#內(nèi)置函數(shù)sorted()返回新列表,不對原列表進(jìn)行修改
list5=[5,3,4,2,1]
list5_new=sorted(list5)
print(list5==list5_new) # False 列表地址不一致
print(list5) #原列表不變 [5, 3, 4, 2, 1]
print(list5_new) #新列表按升序排列 [1, 2, 3, 4, 5]
#降序
list6=sorted(list5,reverse=True)
print(list6==list5) #False
print(list6) #[5, 4, 3, 2, 1]

到此這篇關(guān)于Python中列表的基本操作匯總的文章就介紹到這了,更多相關(guān)Python列表操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中函數(shù)eval和ast.literal_eval的區(qū)別詳解

    Python中函數(shù)eval和ast.literal_eval的區(qū)別詳解

    eval函數(shù)在Python中做數(shù)據(jù)類型的轉(zhuǎn)換還是很有用的。它的作用就是把數(shù)據(jù)還原成它本身或者是能夠轉(zhuǎn)化成的數(shù)據(jù)類型。那么eval和ast.literal_val()的區(qū)別是什么呢?本文將大家介紹關(guān)于Python中函數(shù)eval和ast.literal_eval區(qū)別的相關(guān)資料,需要的朋友可以參考下。
    2017-08-08
  • python設(shè)置環(huán)境變量的幾種方法總結(jié)

    python設(shè)置環(huán)境變量的幾種方法總結(jié)

    這篇文章主要介紹了在Python中設(shè)置環(huán)境變量可以通過多種方式實(shí)現(xiàn),包括使用os.environ、os.putenv、setuptools以及在操作系統(tǒng)級別設(shè)置,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-01-01
  • python使用in操作符時(shí)元組和數(shù)組的區(qū)別分析

    python使用in操作符時(shí)元組和數(shù)組的區(qū)別分析

    有時(shí)候要判斷一個(gè)數(shù)是否在一個(gè)序列里面,這時(shí)就會(huì)用到in運(yùn)算符來判斷成員資格,如果條件為真時(shí),就會(huì)返回true,條件為假時(shí),返回一個(gè)flase。這樣的運(yùn)算符叫做布爾運(yùn)算符,其真值叫做布爾值。
    2015-05-05
  • Pytorch中torch.flatten()和torch.nn.Flatten()實(shí)例詳解

    Pytorch中torch.flatten()和torch.nn.Flatten()實(shí)例詳解

    這篇文章主要給大家介紹了關(guān)于Pytorch中torch.flatten()和torch.nn.Flatten()的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-02-02
  • 學(xué)習(xí)python類方法與對象方法

    學(xué)習(xí)python類方法與對象方法

    這篇文章主要和大家一起學(xué)習(xí)python類方法與對象方法,從一個(gè)簡單例子出發(fā)進(jìn)行學(xué)習(xí),感興趣的小伙伴們可以參考一下
    2016-03-03
  • 使用Python讀取json文件的方法小結(jié)

    使用Python讀取json文件的方法小結(jié)

    這篇文章主要給大家介紹了Python讀取json文件的方法,使用python讀取json文件,輸出結(jié)果為字符串或python對象,文中有詳細(xì)的代碼示例和圖解,感興趣的小伙伴可以自己動(dòng)手試一試
    2023-09-09
  • python實(shí)現(xiàn)感知機(jī)線性分類模型示例代碼

    python實(shí)現(xiàn)感知機(jī)線性分類模型示例代碼

    這篇文章主要給大家介紹了關(guān)于python實(shí)現(xiàn)感知機(jī)線性分類模型的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Python中有幾個(gè)關(guān)鍵字

    Python中有幾個(gè)關(guān)鍵字

    在本篇文章里小編給大家分享的是一篇關(guān)于Python中關(guān)鍵字個(gè)數(shù)的相關(guān)知識(shí)點(diǎn)內(nèi)容,需要的朋友們可以學(xué)習(xí)下。
    2020-06-06
  • 淺談Python中的閉包

    淺談Python中的閉包

    簡單說,閉包就是根據(jù)不同的配置信息得到不同的結(jié)果。再來看看專業(yè)的解釋:閉包(Closure)是詞法閉包(Lexical Closure)的簡稱,是引用了自由變量的函數(shù)。這個(gè)被引用的自由變量將和這個(gè)函數(shù)一同存在,即使已經(jīng)離開了創(chuàng)造它的環(huán)境也不例外。
    2015-07-07
  • Numpy中的ravel_multi_index函數(shù)用法說明

    Numpy中的ravel_multi_index函數(shù)用法說明

    這篇文章主要介紹了Numpy中的ravel_multi_index函數(shù)用法說明,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05

最新評論

于田县| 泰顺县| 巴彦淖尔市| 桐庐县| 澄城县| 谷城县| 醴陵市| 惠东县| 巴东县| 临朐县| 桓台县| 吉隆县| 通许县| 淳化县| 刚察县| 满城县| 柳州市| 丰都县| 麻江县| 泸州市| 宜阳县| 斗六市| 禄劝| 寿光市| 迁安市| 遵义市| 新绛县| 安国市| 静安区| 桃源县| 湖北省| 五原县| 泾川县| 湖南省| 灵台县| 会昌县| 防城港市| 台北县| 余江县| 宜州市| 潜江市|