亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

詳解Python中的List 2

 更新時間:2021年12月15日 16:19:14   作者:雷學委  
這篇文章主要為大家介紹了Python中的List,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

list比tuple多了這些操作支持

前面學委提到tuple(元組)就是焊死了的一串串車廂,list支持元素編輯,明顯靈活多了。

我們先看看刪除操作,python中的list就支持了3中刪除元素的操作。

假設我們定義一個列表對象 list_obj, 那么我們可以執(zhí)行下面任意一個操作,進行元素刪除。

del list_obj[下標]
list_obj.remove(某個元素值)
list_obj.pop(下標) #返回元素值

好,我們看看下面完整代碼:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/31 10:36 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : list_demo4.py
# @Project : hello
# 刪除列表元素
mylist = [1, 0, 2, 4, "雷學委"]
print("mylist:", mylist)
del mylist[0]
print("after remove first element, mylist:", mylist)
mylist.remove("雷學委")
print("after remove first element, mylist:", mylist)
removed_value = mylist.pop(1)  # 移除并返回的元素值
print("after remove first element, mylist:", mylist)
print("removed value:", removed_value)

效果如下:

特別需要注意的是:刪除元素不能超過list的下標范圍,否則報錯!

除了刪除,list怎么添加/擴充元素呢?

先不說修改的,list也支持定位查找元素,我們先看看。

list_obj.index(某個元素值) #通過某個元素值定位到第一個匹配的下標,從0位置開始找。

假設list_obj = [3, 2, 1] 那么list_obj.index(2) 則是什么?

答案是:1。

好,我們繼續(xù)說插入新元素。

# python中的list支持下面兩種方式追加元素
list_obj.insert(指定下標, 元素)
list_obj.append(元素) #末尾追元素

那么一次性追加多個,或者直接擴充某個列表到現(xiàn)有列表呢?

我們找到了extend函數(shù),使用list_obj.extend(補充列表) 就能把list_obj直接擴充了,效果是依次追加補充列表的元素到末尾。

說這么多操作,我們直接復制運行下面的代碼看看:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/31 10:36 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : list_demo5.py
# @Project : hello
# 列表的其他函數(shù)
mylist = [6, 6, 6]
print("mylist:", mylist)
mylist.append("雷學委")
print("mylist:", mylist)
print("列表多少個6?:", mylist.count(6))
print("第一個6的位置下標?:", mylist.index(6))
mylist.insert(2, 1024)
print("第一個1024的位置下標?:", mylist.index(1024))
last = mylist.pop() #刪除操作前面說過了,這幾舉例一個。
print("最后的元素是:",last)
print("mylist:", mylist)
# 直接追加新列表
mylist.extend(mylist)  # 相當于mylist = mylist * 2
print("mylist:", mylist)
mylist.extend(['持續(xù)學習', '持續(xù)開發(fā)'])
print("mylist:", mylist)

這是代碼運行效果:

非常簡便,我們繼續(xù)看看列表元素排序

list的排序

前面說的都是編輯操作,list也可以進行數(shù)據(jù)排列,也就是按照一定邏輯進行順序排列。

list提供了一個sort函數(shù)和reverse函數(shù)。

先說簡單的,reverse函數(shù)相當于把整個串串車廂直接調頭。也就是list:[1,2,3] 經(jīng)過reverse函數(shù)處理后,變成了[3,2,1]。

sort則更加彈性,默認安裝元素面值(比如數(shù)字,數(shù)字串),還支持傳入一個lambda函數(shù),指定排序邏輯。

以上函數(shù)默認會對一個數(shù)字組成的數(shù)組進行按數(shù)字面值大小排序

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/31 10:36 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : list_demo6.py
# @Project : hello
# 列表的其他函數(shù)
mylist = [2, 3, 1]
#mylist = ["2", "3", "1"]
mylist.sort()
print("mylist:", mylist)
mylist.extend(['持續(xù)學習', '持續(xù)開發(fā)'])
print("mylist:", mylist)
mylist.sort(key=lambda e: len(str(e)), reverse=True)
print("sorted mylist:", mylist)
mylist.reverse()
print("reversed mylist:", mylist)

效果如下,讀者可以仔細看看是否如學委所說。

特別注意:學委上面示例代碼也展示了,如果一個列表內(nèi)元素不是同一類型(都是數(shù)字,都是字符串或者都是某個類型),開發(fā)者必須實現(xiàn)一個lambda函數(shù)給sort函數(shù)作為參考進行排序。

總結

list有很多功能,進行元素的操作(添加/刪除/定位)等非常方便。

而且還能輕易擴充,排序,逆序等,這讓list的使用非常廣泛

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內(nèi)容!

相關文章

最新評論