轉(zhuǎn)自
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比雙流網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式雙流網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋雙流地區(qū)。費用合理售后完善,十載實體公司更值得信賴。
Python? range() 函數(shù)返回的是一個可迭代對象(類型是對象),而不是列表類型, 所以打印的時候不會打印列表。
函數(shù)語法:
range(stop)range(start,stop,step)//默認start為0,step為1
Python? list() 函數(shù)是對象迭代器,可以把range()返回的可迭代對象轉(zhuǎn)為一個列表,返回的變量類型為列表。
list() 方法用于將元組轉(zhuǎn)換為列表。
注: 元組與列表是非常類似的,區(qū)別在于元組的元素值不能修改,元組是放在括號中( ),列表是放于方括號中[ ]。
元組中只包含一個元素時,需要在元素后面添加逗號
tup1=(50,)
list、元組與字符串的索引一樣,列表索引從0開始。列表可以進行截取、組合等。
這篇文章主要介紹了Python函數(shù)式編程指南(一):函數(shù)式編程概述,本文講解了什么是函數(shù)式編程概述、什么是函數(shù)式編程、為什么使用函數(shù)式編程、如何辨認函數(shù)式風格等核心知識,需要的朋友可以參考下1pareTo(o2))相信從這個小小的例子你也能感受到強大的生產(chǎn)效率:)封裝控制結(jié)構(gòu)的內(nèi)置模板函數(shù)為了避開邊界效應,函數(shù)式風格盡量避免使用變量,而僅僅為了控制流程而定義的循環(huán)變量和流程中產(chǎn)生的臨時變量無疑是最需要避免的。假如我們需要對剛才的數(shù)集進行過濾得到所有的正數(shù),使用指令式風格的代碼應該像是這樣:代碼如下:lst2 = list()for i in range(len(lst)): #模擬經(jīng)典for循環(huán)if lst[i] 0:lst2.append(lst[i])這段代碼把從創(chuàng)建新列表、循環(huán)、取出元素、判斷、添加至新列表的整個流程完整的展示了出來,儼然把解釋器當成了需要手把手指導的傻瓜。然而,“過濾”這個動作是很常見的,為什么解釋器不能掌握過濾的流程,而我們只需要告訴它過濾規(guī)則呢?在Python里,過濾由一個名為filter的內(nèi)置函數(shù)實現(xiàn)。有了這個函數(shù),解釋器就學會了如何“過濾”,而我們只需要把規(guī)則告訴它:代碼如下:lst2 = filter(lambda n: n 0, lst)這個函數(shù)帶來的好處不僅僅是少寫了幾行代碼這么簡單。封裝控制結(jié)構(gòu)后,代碼中就只需要描述功能而不是做法,這樣的代碼更清晰,更可讀。因為避開了控制結(jié)構(gòu)的干擾,第二段代碼顯然能讓你更容易了解它的意圖。另外,因為避開了索引,使得代碼中不太可能觸發(fā)下標越界這種異常,除非你手動制造一個。函數(shù)式編程語言通常封裝了數(shù)個類似“過濾”這樣的常見動作作為模板函數(shù)。唯一的缺點是這些函數(shù)需要少量的學習成本,但這絕對不能掩蓋使用它們帶來的好處。閉包(closure)閉包是綁定了外部作用域的變量(但不是全局變量)的函數(shù)。大部分情況下外部作用域指的是外部函數(shù)。閉包包含了自身函數(shù)體和所需外部函數(shù)中的“變量名的引用”。引用變量名意味著綁定的是變量名,而不是變量實際指向的對象;如果給變量重新賦值,閉包中能訪問到的將是新的值。閉包使函數(shù)更加靈活和強大。即使程序運行至離開外部函數(shù),如果閉包仍然可見,則被綁定的變量仍然有效;每次運行至外部函數(shù),都會重新創(chuàng)建閉包,綁定的變量是不同的,不需要擔心在舊的閉包中綁定的變量會被新的值覆蓋?;氐絼偛胚^濾數(shù)集的例子。假設過濾條件中的 0 這個邊界值不再是固定的,而是由用戶控制。如果沒有閉包,那么代碼必須修改為:代碼如下:class greater_than_helper:def __init__(self, minval):self.minval = minvaldef is_greater_than(self, val):return val self.minvaldef my_filter(lst, minval):helper = greater_than_helper(minval)return filter(helper.is_greater_than, lst)請注意我們現(xiàn)在已經(jīng)為過濾功能編寫了一個函數(shù)my_filter。如你所見,我們需要在別的地方(此例中是類greater_than_helper)持有另一個操作數(shù)minval。如果支持閉包,因為閉包可以直接使用外部作用域的變量,我們就不再需要greater_than_helper了:代碼如下:def my_filter(lst, minval):return filter(lambda n: n minval, lst)可見,閉包在不影響可讀性的同時也省下了不少代碼量。函數(shù)式編程語言都提供了對閉包的不同程度的支持。在Python 2.x中,閉包無法修改綁定變量的值,所有修改綁定變量的行為都被看成新建了一個同名的局部變量并將綁定變量隱藏。Python 3.x中新加入了一個關(guān)鍵字 nonlocal 以支持修改綁定變量。但不管支持程度如何,你始終可以訪問(讀取)綁定變量。內(nèi)置的不可變數(shù)據(jù)結(jié)構(gòu)為了避開邊界效應,不可變的數(shù)據(jù)結(jié)構(gòu)是函數(shù)式編程中不可或缺的部分。不可變的數(shù)據(jù)結(jié)構(gòu)保證數(shù)據(jù)的一致性,極大地降低了排查問題的難度。例如,Python中的元組(tuple)就是不可變的,所有對元組的操作都不能改變元組的內(nèi)容,所有試圖修改元組內(nèi)容的操作都會產(chǎn)生一個異常。函數(shù)式編程語言一般會提供數(shù)據(jù)結(jié)構(gòu)的兩種版本(可變和不可變),并推薦使用不可變的版本。遞歸遞歸是另一種取代循環(huán)的方法。遞歸其實是函數(shù)式編程很常見的形式,經(jīng)??梢栽谝恍┧惴ㄖ幸姷?。但之所以放到最后,是因為實際上我們一般很少用到遞歸。如果一個遞歸無法被編譯器或解釋器優(yōu)化,很容易就會產(chǎn)生棧溢出;另一方面復雜的遞歸往往讓人感覺迷惑,不如循環(huán)清晰,所以眾多最佳實踐均指出使用循環(huán)而非遞歸。這一系列短文中都不會關(guān)注遞歸的使用。第一節(jié)完
將列表轉(zhuǎn)換成數(shù)組或者數(shù)組轉(zhuǎn)換成列表,操作如下(使用函數(shù)array 和 tolist):
from numpy import *
listS = [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [20, 30, 40, 50, 60, 70, 80, 90, 100]]
print(listS)
temp_array = array(listS, dtype=object)
print(temp_array)
listR = temp_array.tolist()
print(listR)
1、print()函數(shù):打印字符串;
2、raw_input()函數(shù):從用戶鍵盤捕獲字符;
3、len()函數(shù):計算字符長度;
4、format()函數(shù):實現(xiàn)格式化輸出;
5、type()函數(shù):查詢對象的類型;
6、int()函數(shù)、float()函數(shù)、str()函數(shù)等:類型的轉(zhuǎn)化函數(shù);
7、id()函數(shù):獲取對象的內(nèi)存地址;
8、help()函數(shù):Python的幫助函數(shù);
9、s.islower()函數(shù):判斷字符小寫;
10、s.sppace()函數(shù):判斷是否為空格;
11、str.replace()函數(shù):替換字符;
12、import()函數(shù):引進庫;
13、math.sin()函數(shù):sin()函數(shù);
14、math.pow()函數(shù):計算次方函數(shù);
15、os.getcwd()函數(shù):獲取當前工作目錄;
16、listdir()函數(shù):顯示當前目錄下的文件;
17、time.sleep()函數(shù):停止一段時間;
18、random.randint()函數(shù):產(chǎn)生隨機數(shù);
19、range()函數(shù):返回一個列表,打印從1到100;
20、file.read()函數(shù):讀取文件返回字符串;
21、file.readlines()函數(shù):讀取文件返回列表;
22、file.readline()函數(shù):讀取一行文件并返回字符串;
23、split()函數(shù):用什么來間隔字符串;
24、isalnum()函數(shù):判斷是否為有效數(shù)字或字符;
25、isalpha()函數(shù):判斷是否全為字符;
26、isdigit()函數(shù):判斷是否全為數(shù)字;
27、 lower()函數(shù):將數(shù)據(jù)改成小寫;
28、upper()函數(shù):將數(shù)據(jù)改成大寫;
29、startswith(s)函數(shù):判斷字符串是否以s開始的;
30、endwith(s)函數(shù):判斷字符串是否以s結(jié)尾的;
31、file.write()函數(shù):寫入函數(shù);
32、file.writeline()函數(shù):寫入文件;
33、abs()函數(shù):得到某數(shù)的絕對值;
34、file.sort()函數(shù):對書數(shù)據(jù)排序;
35、tuple()函數(shù):創(chuàng)建一個元組;
36、find()函數(shù):查找 返回的是索引;
37、dict()函數(shù):創(chuàng)建字典;
38、clear()函數(shù):清楚字典中的所有項;
39、copy()函數(shù):復制一個字典,會修改所有的字典;
40、 get()函數(shù):查詢字典中的元素。
…………
新聞名稱:python列表替換函數(shù) 列表替換元素python
瀏覽地址:http://m.rwnh.cn/article18/doojhdp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供面包屑導航、網(wǎng)站收錄、網(wǎng)站排名、App開發(fā)、搜索引擎優(yōu)化、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)