在Python中,函數(shù)如下定義:
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設,紅山企業(yè)網(wǎng)站建設,紅山品牌網(wǎng)站建設,網(wǎng)站定制,紅山網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,紅山網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
def函數(shù)名(參數(shù)1,參數(shù)2,…參數(shù)n):
函數(shù)體(語句塊)
幾點需要注意的:
1.函數(shù)的命名規(guī)則要符合Python中命名要求,一般用小寫字母和下劃線、數(shù)字等組合
2.def是定義函數(shù)的關鍵詞,這個簡寫來自英文
單詞define
3.函數(shù)后面是hi圓括號,可以有參數(shù)列表,也可以沒有參數(shù)
4.括號后面的冒號不要忘記了
5.函數(shù)體(語句塊),相對于def縮進四個空格
def name():#定義一個無參數(shù)的函數(shù),只是通過這個函數(shù)打印
..print"python function"#函數(shù)體,縮進4個空格
name()#調(diào)用函數(shù),打印結(jié)果
def add(x,y):#定義一個加法函數(shù)
….return x+y #縮進4個空格
add(3,4)#通過函數(shù)計算3+4的和
add("hello ","world")
'hello world'
內(nèi)置函數(shù),在python幫助文檔中:Build-in Functions
在Python提示符下,輸入下面語句,就會顯示Python提供的內(nèi)置函數(shù)列表
dir('__builtins__')
abs(_) 內(nèi)置函數(shù),絕對值或復數(shù)的模。
chr() 以單字節(jié)整數(shù)為參數(shù),返回一個單字符的字符串,其內(nèi)容是與之對于的ASCII字符。如chr(69)返回'E'。
cmp() 比較字符串,cmp('Xiao','Jian')返回1
coerce() (可以看成一個數(shù)值類型轉(zhuǎn)換函數(shù))有兩個參數(shù),都是數(shù)字,返回這兩個數(shù)字的一個列表,將這兩個數(shù)字的數(shù)據(jù)類型統(tǒng)一。如coerce(1,2j),返回(1+0j,2j)
complex() 內(nèi)置函數(shù),把……轉(zhuǎn)換成復數(shù),如complex('2')返回(2+0j),complex('2+3j')返回(2+3j)。
divmod() 內(nèi)置函數(shù),有兩個參數(shù),返回(商,余數(shù))。如divmod(10,2.5),返回(4.0,0.0)。
filter(function,list) 把函數(shù)應用于list中的每一項,并返回 從函數(shù)中返回真值的項。注:function可以為None,此時刪除list中的0或空項。
float() 內(nèi)置函數(shù),把……轉(zhuǎn)換成浮點數(shù)。
floor() 在math模塊內(nèi),需要import math。向下取整,即向x軸負方向取整。如math.floor(1.9)返回1,math.floor(-2.5)返回-3。
hash() 散列功能,詞典鍵的最精確功能需求是它一定是可散列的。對象的散列值是半唯一的、內(nèi)部生成的數(shù)字,它可用于快速比較。
int() 內(nèi)置函數(shù),把字符串或者小數(shù)轉(zhuǎn)換為一個整數(shù)。直接去掉小數(shù)部分。如int(5.3)返回5,int('5')返回5。
len(x) 序列x的長度
long() 內(nèi)置函數(shù),把數(shù)字 或 代表整數(shù)的字符串 轉(zhuǎn)換成長整型
map(function,list[,list,...])
max() 找出字符串中最大的字符。如:min('find the minimum character'),返回' ',即空格。
min() 找出字符串中最小的字符。如:max('find the maximum character'),返回'x'。
oct() 將十進制數(shù)轉(zhuǎn)換成八進制,再變成字符。
ord() 參數(shù)是單個的ASCII字符,返回該ASCII字符對應的整數(shù)值,如ord('a')返回97。
pow() 內(nèi)置函數(shù),乘方。如果有第三個參數(shù),則表示乘方的結(jié)果對第三參數(shù)取余,如pow(2,3)返回8,pow(2,3,4)返回0。
print 輸出到窗口
range() 生成一個向量,例如range(m,n,d),從m到n,步長為d;range(m)則生成0:m-1,步長為1的向量。
raw_input() 輸入函數(shù),參數(shù)為字符串,作為輸入時的提示語句。返回值為字符串。
reduce(func)
round() 內(nèi)置函數(shù),對數(shù)字進行四舍五入,第二個參數(shù)表示精確到小數(shù)點后指定的位數(shù),默認值為0。如round(2.4)返回2,round(1.398,2)返回1.40。
type() 返回某數(shù)據(jù)的類型
x的取指是從1到4的這個范圍中的數(shù)字,但是不包括4,也就是說它會輸出1、2、3。
Python中range(start,stop)函數(shù)的含義:其中,start表示這一些列數(shù)字中的第一個數(shù)字;stop-1表示這一系列數(shù)字中的最后一個數(shù)字。需要注意的是,產(chǎn)生的數(shù)字中不包括stop。
python有兩個內(nèi)置的函數(shù)用于實現(xiàn)排序,一個是list.sort()函數(shù),一個是sorted()函數(shù)。
區(qū)別1:list.sort()函數(shù)只能處理list類型數(shù)據(jù)的排序;sorted()則可以處理多種類型數(shù)據(jù)的排序。
區(qū)別2:list.sort()會修改原來的list為排序后的結(jié)果;sorted()不會修改原來的數(shù)據(jù),只是返回一個排序后的對象。
下面來動手寫點代碼進行測試:
list進行簡單的排序
1 a=['a','f','c','x','e']2 a.sort()3 a4 [a','c','e','f','x']
sorted()進行簡單排序
1 a=['a','f','c','x','e']2 a_new=sorted(a)3 a_new4 ['a', 'c', 'e', 'f', 'x']
list.sort()和sorted都有默認的參數(shù)reverse,該參數(shù)的默認值為“False”,即默認升序排列。如果要進行降序排列:
1 a=['a','f','c','x','e']2 a_new=sorted(a,reverse=True)3 a_new4 ['x', 'f', 'e', 'c', 'a']
對元組進行排列,不能使用list.sort()函數(shù):
1 a=('a','f','c','x','e')2 a_new=a.sort()3
4 ttributeError: 'tuple' object has no attribute 'sort'
對字典的排序可以按照字典的key或者value進行排序:
1 dic={"aa":11,"ff":5,"ee":22}2 printsorted(dic.keys())3 ['aa', 'ee', 'ff']
從python2.4開始list.sort()和sorted()都引入了key參數(shù)來指定一個函數(shù)進行排序,有了key參數(shù)以后我們就可以對更加復雜的數(shù)據(jù)進行排序 。
假如需要排序的數(shù)據(jù)為一個list,但list的每一個元素都是一個字典,排序的方法如下:
dic=[{"name":"sunny","age":20},
{"name":"bell","age":5},
{"name":"jim","age":1},
{"name":"jan","age":10}]print sorted(dic,key=lambda arg:arg.get('age'),reverse=False) #按照每個字典的age的值進行排序,字典的方法dict.get(key)將返回指定鍵的值。
#輸出結(jié)果為:[{'age': 1, 'name': 'jim'}, {'age': 5, 'name': 'bell'}, {'age': 10, 'name': 'jan'}, {'age': 20, 'name': 'sunny'}]
print sorted(dic,key=lambda arg:arg.get('name'),reverse=False) #按照每個字典的name的值進行排序
#輸出結(jié)果為:[{'age': 5, 'name': 'bell'}, {'age': 10, 'name': 'jan'}, {'age': 1, 'name': 'jim'}, {'age': 20, 'name': 'sunny'}]
假如需要排序的數(shù)據(jù)為一個二維的list,即list的每一個元素也是一個list,方法與上面的例子類似:
a=[['100','8','30'],['200','5','50'],['300','1','20']]print sorted(a,key=lambda arg:arg[1]) #按照每個list的第1個元素進行排序
[['300', '1', '20'], ['200', '5', '50'], ['100', '8', '30']]
前面的2個例子中,key參數(shù)的值都是函數(shù)。在sorted函數(shù)中,key參數(shù)后面的函數(shù)的參數(shù)的數(shù)量只能是一個。lambda arg:arg.get('age')是一個lambda匿名函數(shù),它是一個沒有函數(shù)名的單語句函數(shù)。冒號左邊是參數(shù),冒號右邊的返回值,返回值將被用于排序。
名稱欄目:包含python中x函數(shù)的詞條
文章起源:http://chinadenli.net/article8/dogecop.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、電子商務、網(wǎng)站建設、用戶體驗、網(wǎng)站營銷、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)