摘要:列表是編程中使用頻率極高的數(shù)據(jù)結(jié)構(gòu),由一系列按特定順序排列的元素組成,用表示,逗號(hào)分隔元素,類似中的數(shù)組。由于列表包含多個(gè)元素,所以通常命名為復(fù)數(shù)形式,如,等。使用切片裁剪獲取子列表使用列表名裁剪獲取對(duì)應(yīng)索引區(qū)間的子列。
前言: 好久不見,突然發(fā)覺好久沒寫博客了,最近迷上了 Python 無(wú)法自拔,了解了一下,Python 簡(jiǎn)單易學(xué),尤其是接觸過 java 的人,入門 Python 更是門檻極低,本著學(xué)習(xí)記錄的原則,邊學(xué)習(xí)邊記錄,有利于梳理學(xué)習(xí)的成果,也有利于后期的復(fù)盤,所以今天開始 Python 學(xué)習(xí)之旅的第一篇博客,純粹只是記錄。
簡(jiǎn)單的語(yǔ)法定義就不記錄了,從數(shù)據(jù)結(jié)構(gòu)開始,程序最重要的就是操作數(shù)據(jù),學(xué)習(xí)一門編程語(yǔ)言毫無(wú)疑問必須掌握它獨(dú)有的數(shù)據(jù)結(jié)構(gòu)?,F(xiàn)在就從 列表 開始。
列表是 Python 編程中使用頻率極高的數(shù)據(jù)結(jié)構(gòu),由一系列按特定順序排列的元素組成,用 [] 表示,逗號(hào)分隔元素,類似 Java 中的 數(shù)組。列表被創(chuàng)建來(lái)存儲(chǔ)數(shù)據(jù),是動(dòng)態(tài)的,隨時(shí)可以對(duì)列表進(jìn)行 crud 操作。由于列表包含多個(gè)元素,所以通常命名為復(fù)數(shù)形式,如 names,letters 等。基本格式
fruits = ["apple","bananer","oranger"] print(fruits)訪問列表元素
跟大多數(shù)編程語(yǔ)言一樣,python列表數(shù)據(jù)的訪問也是通過索引來(lái)獲取,第一個(gè)元素從0開始,最后一個(gè)元素索引為列表的總數(shù)據(jù)和減一。python也提供可另一種特殊語(yǔ)法,可以直接使用-1作為索引獲取最后一個(gè)元素,依次減一逆向獲取數(shù)據(jù)。獲取到列表數(shù)據(jù)之后 可以直接拿來(lái)進(jìn)行任何操作。
print(fruits[0])//獲取第一個(gè)元素 `apple` print(fruits[-1])//獲取最后一個(gè)元素`oranger`修改列表元素
直接根據(jù)索引拿到對(duì)應(yīng)位置的元素,對(duì)其重新賦值即可。
fruits[0] = "watermelon"http://修改第一個(gè)元素 print(fruits)//重新打印列表
此時(shí)列表變更為:["watermelon", "bananer", "oranger"]
增加元素調(diào)用 append() 方法在列表末尾添加元素
fruits.append("Plum") print(fruits)
此時(shí)列表為:["apple", "bananer", "oranger", "Plum"]
調(diào)用 insert()方法在指定索引出插入數(shù)據(jù)
fruits.insert(1,"pear")//在索引為1處插入數(shù)據(jù) print(fruits)
此時(shí)列表為:["apple", "pear", "bananer", "oranger"]
刪除列表中的數(shù)據(jù)知道索引的情況下,直接使用del刪除數(shù)據(jù)
del fruits[0]//刪除第一個(gè)數(shù)據(jù) print(fruits)
此時(shí)列表為:["pear", "bananer", "oranger"]
調(diào)用pop()彈出列表列表數(shù)據(jù),并返回彈出的數(shù)據(jù)。如果不傳參數(shù),默認(rèn)彈出列表最后一個(gè)元素,若傳入索引值,則彈出指定索引元素
print(fruits.pop())//彈出最后一個(gè)元素,并打印 print(fruits) print(fruits.pop(0))//彈出第一個(gè)元素,并打印 print(fruits)
注意此時(shí)結(jié)果為:
oranger ["pear", "bananer"] pear ["bananer"]
假如不知道元素的索引,而直到具體要?jiǎng)h除的元素值,也可以直接調(diào)用 remove()方法刪除,注意 刪除之后,還可以繼續(xù)使用該元素。
fruits = ["apple","bananer","oranger","prea"] print(fruits) delete = "bananer"http://刪除的元素 fruits.remove(delete)//調(diào)用方法刪除指定元素值 print(fruits) print(delete)//最后打印刪除掉的元素
結(jié)果為:
["apple", "bananer", "oranger", "prea"] ["apple", "oranger", "prea"] bananer列表排序
調(diào)用 sort() 對(duì)列表元素進(jìn)行排序,默認(rèn)是按自然順序排序,如果要逆向排序,可傳入 參數(shù)reverse=True,排序之后 列表的順序就永久改變了。
fruits = ["bananer","apple","oranger","prea"] print(fruits) fruits.sort() print(fruits)
結(jié)果為:
["bananer", "apple", "oranger", "prea"] ["apple", "bananer", "oranger", "prea"]
假如我們想臨時(shí)該表一下列表的順序,可以使用 sorted()方法
fruits = ["bananer","apple","oranger","prea"] print(fruits) print(sorted(fruits)) print(fruits)
結(jié)果為:
["bananer", "apple", "oranger", "prea"] ["apple", "bananer", "oranger", "prea"] ["bananer", "apple", "oranger", "prea"]
可見 列表順序并沒有改變。
使用 reserse() 方法,翻轉(zhuǎn)列表元素fruits = ["bananer","apple","oranger","prea"] print(fruits) fruits.reverse()//翻轉(zhuǎn)列表元素 print(fruits)
結(jié)果為:
["bananer", "apple", "oranger", "prea"] ["prea", "oranger", "apple", "bananer"]使用len()方法獲取列表長(zhǎng)度
fruits = ["bananer","apple","oranger","prea"] print(len(fruits))
結(jié)果明顯為4.
for 循環(huán)遍歷列表這跟 java中類似,格式為 for xxx in 列表名:,遍歷獲取到列表數(shù)據(jù)之后,我們可以對(duì)它進(jìn)行任何操作
fruits = ["bananer","apple","oranger","prea"] for fruit in fruits: print(fruit)
結(jié)果為遍歷打印出各個(gè)元素:
bananer apple oranger prea
注意:python 中代碼塊是沒有{}的,都是用4個(gè)空格縮進(jìn)代表代碼塊,for循環(huán),if 循環(huán),while循環(huán),方法體都是如此,編寫代碼時(shí)一定要注意縮進(jìn)
快速組裝數(shù)字列表ranger()傳入起始值和結(jié)束值可以按順序產(chǎn)生一系列數(shù)字,再使用list()可以快速組裝一定任意范圍的數(shù)字列表
numbers = list(range(1,6))//組裝列表 print(numbers)
結(jié)果:[1, 2, 3, 4, 5] 其實(shí)使用遍歷也可以實(shí)現(xiàn),但是這種方法更加便捷。
列表生成式使用 [表達(dá)式 for 變量值 in range(x,x) if xxx] 只需一條語(yǔ)句就可以快速生成數(shù)值列表,其中表達(dá)式是遍歷數(shù)值結(jié)果進(jìn)行操作,還可以添加 if 條件。
numbers = [x * x for x in range(1,6)]//求平方數(shù)值列表 print(numbers)
結(jié)果為:[1, 4, 9, 16, 25] 這種表達(dá)式相當(dāng)簡(jiǎn)潔,原先的好幾行只需一行就能搞定。
使用切片裁剪獲取子列表使用 列表名[x:y] 裁剪獲取對(duì)應(yīng)索引區(qū)間的子列。假如省略起始值x,默認(rèn)從0索引開始裁剪,假如省略結(jié)束值y,默認(rèn)裁剪余下的所有元素。
fruits = ["bananer","apple","oranger","prea"] print(fruits[0:2])
結(jié)果為:["bananer", "apple"]
至此,基本的列表操作差不多都總結(jié)完了,順便記錄一下元組
列表中的數(shù)據(jù)是可變的,我們經(jīng)常用它來(lái)存儲(chǔ)可變的數(shù)據(jù)源
元組跟列表一樣也是用來(lái)存儲(chǔ)數(shù)據(jù)源的,但是它存儲(chǔ)的數(shù)據(jù)源是不可變的
元組定義的格式也不一樣,為(xxx,yyy,zzz).
對(duì)于元組的操作,跟列表一樣
小白式學(xué) python3 第一篇總結(jié),如有不妥之處,麻煩在評(píng)論區(qū)指出,謝謝~
參考:廖大教程https://www.liaoxuefeng.com/w...
更多原創(chuàng)文章會(huì)在公眾號(hào)第一時(shí)間推送,歡迎掃碼關(guān)注 張少林同學(xué)
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42876.html
摘要:按目前的發(fā)展趨勢(shì),未來(lái)的主流版為。這里介紹一個(gè)強(qiáng)大的軟件,它實(shí)現(xiàn)和兩個(gè)版本的共存,并且可以相互轉(zhuǎn)換。應(yīng)用程序是包和環(huán)境管理器。另外值得一提的是,并不僅僅管理的工具包,它也能安裝非的包。實(shí)際上,腳本和程序使用的默認(rèn)是附帶的。 前言 初學(xué)Python時(shí),總是被python的兩個(gè)不太兼容的版本搞得頭昏腦脹。按目前的發(fā)展趨勢(shì),python未來(lái)的主流版為python3。但是我們經(jīng)常會(huì)遇到一些很有...
摘要:好啦一切準(zhǔn)備工作就緒,現(xiàn)在開始安裝庫(kù)安裝成功后,安裝就簡(jiǎn)單了,在命令提示符窗口直接輸入命令回車現(xiàn)在一切都搞定了,可以新建一個(gè)測(cè)試,敲一個(gè)基于框架的爬蟲程序咯。 最近忽然有了想要學(xué)習(xí)python爬蟲的想法,但是首先需要安裝工具。python安裝倒是很輕松,只要傻瓜式一鍵安裝即可,但是在Windows下安裝scrapy倒不是件容易的事情。言歸正傳,說(shuō)下我從昨天下午到今天上午安裝的步驟: 1...
摘要:偽靜態(tài)大家應(yīng)該知道例如你的頁(yè)面生成的頁(yè)面為為了和容易被百度等搜索引擎抓取,也為了防止高并發(fā)的時(shí)候占用服務(wù)器資源我們應(yīng)該把頁(yè)面的鏈接顯示為等類似格式,反正就是為后綴。我自己沒有深入研究這個(gè),但是我簡(jiǎn)單實(shí)現(xiàn)了這個(gè)。 偽靜態(tài)大家應(yīng)該知道例如你的php頁(yè)面生成的頁(yè)面為xxx.php?id=1為了seo和容易被百度等搜索引擎抓取,也為了防止高并發(fā)的時(shí)候占用服務(wù)器資源我們應(yīng)該把xxx.php?id...
閱讀 2535·2023-04-26 02:57
閱讀 1417·2023-04-25 21:40
閱讀 2188·2021-11-24 09:39
閱讀 3568·2021-08-30 09:49
閱讀 772·2019-08-30 15:54
閱讀 1178·2019-08-30 15:52
閱讀 2092·2019-08-30 15:44
閱讀 1282·2019-08-28 18:27