轉(zhuǎn)自
創(chuàng)新互聯(lián)公司于2013年開始,先為工農(nóng)等服務(wù)建站,工農(nóng)等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為工農(nóng)企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
Python? range() 函數(shù)返回的是一個(gè)可迭代對(duì)象(類型是對(duì)象),而不是列表類型, 所以打印的時(shí)候不會(huì)打印列表。
函數(shù)語(yǔ)法:
range(stop)range(start,stop,step)//默認(rèn)start為0,step為1
Python? list() 函數(shù)是對(duì)象迭代器,可以把range()返回的可迭代對(duì)象轉(zhuǎn)為一個(gè)列表,返回的變量類型為列表。
list() 方法用于將元組轉(zhuǎn)換為列表。
注: 元組與列表是非常類似的,區(qū)別在于元組的元素值不能修改,元組是放在括號(hào)中( ),列表是放于方括號(hào)中[ ]。
元組中只包含一個(gè)元素時(shí),需要在元素后面添加逗號(hào)
tup1=(50,)
list、元組與字符串的索引一樣,列表索引從0開始。列表可以進(jìn)行截取、組合等。
列表是一種有序的集合,有點(diǎn)類似c里面的數(shù)組。它的特點(diǎn)是,可以隨時(shí)向里面添加或刪除其中的元素,在python中經(jīng)常用來存放數(shù)據(jù)。列表的特點(diǎn)是中括號(hào),內(nèi)部元素用逗號(hào)隔開。
在這個(gè)列表中,可以放進(jìn)去任何元素,不論你的元素是字符串、整型、浮點(diǎn)型、還是布爾值、空值,包括列表什么的,都可以放進(jìn)去。
元素與元素之間,用逗號(hào)隔開。
列表會(huì)為每個(gè)元素分配序號(hào),這個(gè)序號(hào)代表它的位置,稱為索引(index),第一個(gè)元素的位置是0,第二個(gè)元素是1,以此類推。
使用索引獲取列表中的值時(shí),需要使用中括號(hào)來訪問,在中括號(hào)前面加上列表名,中括號(hào)內(nèi)部是元素的索引。
0代表第一個(gè)元素的位置,1代表第二個(gè),-1代表倒數(shù)第一個(gè),-2代表倒數(shù)第二個(gè)
使用 len() 函數(shù),可以查看列表里面有多少個(gè)元素
在python中,列表的操作是非常的靈活的,我們可以向其中添加或刪除元素。
添加使用 list.append() 函數(shù)
list.append() 函數(shù)是將元素插入到列表的末尾,當(dāng)我們想在特定位置插入元素時(shí)可以使用 list.insert() 函數(shù)
list.insert() 函數(shù)接受兩個(gè)參數(shù),第一個(gè)參數(shù)是插入位置,第二個(gè)參數(shù)是要插入的元素。
需要注意的是,在使用append和insert時(shí),必須在前面注明要操作的列表。就像上面的例子,我們要操作classmates這個(gè)列表,所以必須寫成 classmates.append() 或 classmates.insert() ,如果不這么寫,計(jì)算機(jī)就不知道你要往哪個(gè)列表中加入元素。
沒有特殊情況的話,推薦使用append()函數(shù)添加元素,因?yàn)槭褂胊ppend的時(shí)候,元素默認(rèn)加在列表尾部,不會(huì)造成其他元素索引值的改變。如果使用insert的話,就像上面的insert(1,'Tom'),在位置1插入'Tom'后,Tom后面所有的元素,索引值都加了一個(gè)1,列表中元素越多,受影響的程度越大,因此使用append()函數(shù)要比insert()函數(shù)更快。
刪除列表中元素的方法有三種
del后面需要用索引的方式表明要?jiǎng)h除的元素,也就是上面的例子,names[1]代表names中的第二個(gè)元素,使用del即可刪除
list.pop() 函數(shù)與del差不多,都是使用索引值進(jìn)行刪除,只不過寫法不同。
我們可以發(fā)現(xiàn),執(zhí)行 names.pop(1) 后,python shell打印出了第二個(gè)元素的值,也就是我們要?jiǎng)h除的那個(gè)值,這是因?yàn)?pop() 這個(gè)函數(shù),是有返回值的,有時(shí)候我們需要使用這個(gè)值,這個(gè)時(shí)候就可以用變量存起來。
這樣我們就可以通過調(diào)用a而使用剛才刪掉的元素了。
list.remove() 函數(shù)的作用是刪除第一個(gè)匹配的元素,上面的例子中,names這個(gè)列表里面,有兩個(gè)'Bob',remove函數(shù)只刪除了第一個(gè)'Bob'。這就是 list.remove() 函數(shù)的特點(diǎn)。
有時(shí)候我們想使用列表的前10個(gè)元素,或者前n個(gè)元素,這時(shí)候就應(yīng)該使用列表的切片。
切片和索引類似,都是使用中括號(hào),區(qū)別是,索引中的中括號(hào)里面只有一個(gè)數(shù),而切片不同。切片是切割列表,形成切割下來的部分形成新的列表。
切片: list[start:end:[step=1]] ,這就是切片的表達(dá)式,要求start和end兩者必須有一個(gè),step不是可以不指定,不指定的時(shí)候默認(rèn)為1。
切片該怎么理解呢,start就是開始的位置,end就是結(jié)束的位置。切片有個(gè)特點(diǎn)是“取前不取后”,看上面那個(gè)例子可以發(fā)現(xiàn),1作為start,3作為end,1代表第二個(gè)元素,3代表第四個(gè)元素,列表切片的時(shí)候,是不取后面的那個(gè)數(shù)字對(duì)應(yīng)的元素的,也就是不取第四個(gè)元素,所以names[1:3]只取了第二個(gè)元素和第三個(gè)元素,這就是所謂的取前不取后。
再看下一個(gè)例子。
當(dāng)不指定start或者end的時(shí)候,start默認(rèn)為0,end默認(rèn)為最后一個(gè)元素的索引值+1,因?yàn)椤叭∏安蝗『蟆?,要想取到最后一個(gè)元素,必須加個(gè)1才行。
上例中,用 len(numbers) 表示了最后一個(gè)元素的索引值,因?yàn)樗饕祻?開始,最后一個(gè)元素的索引值一定是列表內(nèi)元素個(gè)數(shù)-1,根據(jù)“取前不取后”,在end位置上的數(shù)字應(yīng)該+1,所以最后就等于 len(numbers) 了。
當(dāng)不設(shè)定start和end的時(shí)候,就默認(rèn)取所有的元素了。
當(dāng)加入step,這個(gè)選項(xiàng)后,step代表步長(zhǎng),默認(rèn)為1,設(shè)定成2的時(shí)候,就是隔一個(gè)取一個(gè),設(shè)定成3時(shí)就是隔兩個(gè)取一個(gè)。
上例中,第一個(gè)切片,start和end均未設(shè)定,因此從第一個(gè)元素開始,隔一個(gè)取一個(gè),得到了所有奇數(shù)位置的元素。
第二個(gè)切片,start設(shè)定為了1,因此取了所有偶數(shù)位置的元素。
3在列表中,0不在列表中,所以 3 in a 是True,而 0 in a 是False
更多關(guān)于列表的信息可以通過使用 help(list) 查看幫助文檔。
內(nèi)置函數(shù)就是Python給你提供的,拿來直接用的函數(shù),比如print.,input等。
截止到python版本3.6.2 ,python一共提供了68個(gè)內(nèi)置函數(shù),具體如下
本文將這68個(gè)內(nèi)置函數(shù)綜合整理為12大類,正在學(xué)習(xí)Python基礎(chǔ)的讀者一定不要錯(cuò)過,建議收藏學(xué)習(xí)!
(1)列表和元組
(2)相關(guān)內(nèi)置函數(shù)
(3)字符串
frozenset 創(chuàng)建一個(gè)凍結(jié)的集合,凍結(jié)的集合不能進(jìn)行添加和刪除操作。
語(yǔ)法:sorted(Iterable, key=函數(shù)(排序規(guī)則), reverse=False)
語(yǔ)法:fiter(function. Iterable)
function: 用來篩選的函數(shù). 在?lter中會(huì)自動(dòng)的把iterable中的元素傳遞給function. 然后根據(jù)function返回的True或者False來判斷是否保留留此項(xiàng)數(shù)據(jù) , Iterable: 可迭代對(duì)象
搜索公眾號(hào)頂級(jí)架構(gòu)師后臺(tái)回復(fù)“面試”,送你一份驚喜禮包。
語(yǔ)法 : map(function, iterable)
可以對(duì)可迭代對(duì)象中的每一個(gè)元素進(jìn)行映射. 分別去執(zhí)行 function
hash : 獲取到對(duì)象的哈希值(int, str, bool, tuple). hash算法:(1) 目的是唯一性 (2) dict 查找效率非常高, hash表.用空間換的時(shí)間 比較耗費(fèi)內(nèi)存
【常見的內(nèi)置函數(shù)】
1、enumerate(iterable,start=0)
是python的內(nèi)置函數(shù),是枚舉、列舉的意思,對(duì)于一個(gè)可迭代的(iterable)/可遍歷的對(duì)象(如列表、字符串),enumerate將其組成一個(gè)索引序列,利用它可以同時(shí)獲得索引和值。
2、zip(*iterables,strict=False)
用于將可迭代的對(duì)象作為參數(shù),將對(duì)象中對(duì)應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的列表。如果各個(gè)迭代器的元素個(gè)數(shù)不一致,則返回列表長(zhǎng)度與最短的對(duì)象相同,利用*號(hào)操作符,可以將元組解壓為列表。
3、filter(function,iterable)
filter是將一個(gè)序列進(jìn)行過濾,返回迭代器的對(duì)象,去除不滿足條件的序列。
4、isinstance(object,classinfo)
是用來判斷某一個(gè)變量或者是對(duì)象是不是屬于某種類型的一個(gè)函數(shù),如果參數(shù)object是classinfo的實(shí)例,或者object是classinfo類的子類的一個(gè)實(shí)例,
返回True。如果object不是一個(gè)給定類型的的對(duì)象, 則返回結(jié)果總是False
5、eval(expression[,globals[,locals]])
用來將字符串str當(dāng)成有效的表達(dá)式來求值并返回計(jì)算結(jié)果,表達(dá)式解析參數(shù)expression并作為Python表達(dá)式進(jìn)行求值(從技術(shù)上說是一個(gè)條件列表),采用globals和locals字典作為全局和局部命名空間。
【常用的句式】
1、format字符串格式化
format把字符串當(dāng)成一個(gè)模板,通過傳入的參數(shù)進(jìn)行格式化,非常實(shí)用且強(qiáng)大。
2、連接字符串
常使用+連接兩個(gè)字符串。
3、if...else條件語(yǔ)句
Python條件語(yǔ)句是通過一條或多條語(yǔ)句的執(zhí)行結(jié)果(True或者False)來決定執(zhí)行的代碼塊。其中if...else語(yǔ)句用來執(zhí)行需要判斷的情形。
4、for...in、while循環(huán)語(yǔ)句
循環(huán)語(yǔ)句就是遍歷一個(gè)序列,循環(huán)去執(zhí)行某個(gè)操作,Python中的循環(huán)語(yǔ)句有for和while。
5、import導(dǎo)入其他腳本的功能
有時(shí)需要使用另一個(gè)python文件中的腳本,這其實(shí)很簡(jiǎn)單,就像使用import關(guān)鍵字導(dǎo)入任何模塊一樣。
python中range()函數(shù)的用法:
(1)range(stop)
創(chuàng)建一個(gè)(0,stop)之間的整數(shù)序列,步長(zhǎng)為1。
(2)range(start,stop)
創(chuàng)建一個(gè)(start,stop)之間的整數(shù)序列,步長(zhǎng)為1。
(3)range(start,stop,step)
創(chuàng)建一個(gè)[start,stop)之間的整數(shù)序列,步長(zhǎng)為step。
參數(shù)介紹:
start:表示從返回序列的起始編號(hào),默認(rèn)情況下從0開始。
stop:表示生成最多但不包括此數(shù)字的數(shù)字。
step:指的是序列中每個(gè)數(shù)字之間的差異,默認(rèn)值為1。
相關(guān)介紹
range()是Python的內(nèi)置函數(shù),在用戶需要執(zhí)行特定次數(shù)的操作時(shí)使用它,表示循環(huán)的意思。內(nèi)置函數(shù)range()可用于以列表的形式生成數(shù)字序列。在range()函數(shù)中最常見用法是使用for和while循環(huán)迭代序列類型(List,string等)。
簡(jiǎn)單的來說,range()函數(shù)允許用戶在給定范圍內(nèi)生成一系列數(shù)字。根據(jù)用戶傳遞給函數(shù)的參數(shù)數(shù)量,用戶可以決定該系列數(shù)字的開始和結(jié)束位置以及一個(gè)數(shù)字與下一個(gè)數(shù)字之間的差異有多大。
python常見的內(nèi)置函數(shù)有:
1. abs()函數(shù)返回?cái)?shù)字的絕對(duì)值。
2. all() 函數(shù)用于判斷給定的參數(shù)中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。元素除了是 0、空、None、False 外都算 True;空元組、空列表返回值為True。
3. any() 函數(shù)用于判斷給定的參數(shù)是否全部為False,是則返回False,如果有一個(gè)為True,則返回True。 元素除了是 0、空、False外都算 TRUE。
4. bin()函數(shù)返回一個(gè)整數(shù)int或者長(zhǎng)整數(shù)long int的二進(jìn)制表示。
5. bool() 函數(shù)用于將給定參數(shù)轉(zhuǎn)換為布爾類型,如果參數(shù)不為空或不為0,返回True;參數(shù)為0或沒有參數(shù),返回False。
6. bytearray()方法返回一個(gè)新字節(jié)數(shù)組。這個(gè)數(shù)組里的元素是可變的,并且每個(gè)元素的值范圍: 0 = x 256(即0-255)。即bytearray()是可修改的二進(jìn)制字節(jié)格式。
7. callable()函數(shù)用于檢查一個(gè)對(duì)象是否可調(diào)用的。對(duì)于函數(shù)、方法、lambda函式、類以及實(shí)現(xiàn)了 __call__ 方法的類實(shí)例, 它都返回 True。(可以加括號(hào)的都可以調(diào)用)
8. chr()函數(shù)用一個(gè)范圍在range(256)內(nèi)(即0~255)的整數(shù)作參數(shù),返回一個(gè)對(duì)應(yīng)的ASCII數(shù)值。
9. dict()函數(shù)用來將元組/列表轉(zhuǎn)換為字典格式。
10. dir()函數(shù)不帶參數(shù)時(shí),返回當(dāng)前范圍內(nèi)的變量、方法和定義的類型列表;帶參數(shù)時(shí),返回參數(shù)的屬性、方法列表。
擴(kuò)展資料:
如何查看python3.6的內(nèi)置函數(shù)?
1、首先先打開python自帶的集成開發(fā)環(huán)境IDLE;
2、然后我們直接輸入"dir(__builtins__)",需要注意的是builtins左右的下劃線都是兩個(gè);
3、回車之后我們就可以看到python所有的內(nèi)置函數(shù);
4、接下來我們學(xué)習(xí)第二種查看python內(nèi)置函數(shù)的方法,我們直接在IDLE中輸入"import builtins",然后輸入"dir(builtins)";
5、然后回車,同樣的這個(gè)方法也可以得到所有的python內(nèi)置的函數(shù);
6、這里我們可以使用python內(nèi)置函數(shù)len()來查看python內(nèi)置函數(shù)的個(gè)數(shù),這里我們直接輸入"len(dir(builtins))";
7、回車之后我們可以看到系統(tǒng)返回值153,說明我們現(xiàn)在這個(gè)版本中有153個(gè)內(nèi)置函數(shù);
8、最后我們介紹一個(gè)比較有用的內(nèi)置函數(shù)"help",python內(nèi)置函數(shù)有一百多個(gè),我們當(dāng)然不能記住所有的函數(shù),這里python提供了一個(gè)"help"函數(shù),我們來看一個(gè)例子一起來體會(huì)一下help函數(shù)的用法,這里我們直接輸入"help(len)",然后回車,會(huì)看到系統(tǒng)給我們對(duì)于內(nèi)置函數(shù)"len"的解釋,當(dāng)然對(duì)于其他函數(shù)可能會(huì)有更加詳細(xì)的解釋以及用法提示。
名稱欄目:python列表相關(guān)函數(shù),python列表函數(shù)用法
本文地址:http://www.rwnh.cn/article8/dsijdip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、品牌網(wǎng)站建設(shè)、云服務(wù)器、網(wǎng)站收錄、自適應(yīng)網(wǎng)站、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)