def 函數(shù)名():? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
創(chuàng)新互聯(lián)公司專注骨干網(wǎng)絡服務器租用十多年,服務更有保障!服務器租用,電信內(nèi)江機房 成都服務器租用,成都服務器托管,骨干網(wǎng)絡帶寬,享受低延遲,高速訪問。靈活、實現(xiàn)低成本的共享或公網(wǎng)數(shù)據(jù)中心高速帶寬的專屬高性能服務器。
? ?函數(shù)體? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ?return? 返回值? ? ? ? ? ? ? ? ? ? ? ? ? ??
def 函數(shù)名(非可選參數(shù),可選參數(shù)):
???函數(shù)體?
return 返回值
def 函數(shù)名(參數(shù),*b):
? ? 函數(shù)體
? ? return 返回值
函數(shù)名 = lambda 參數(shù) : 表達式
例1:f = lambda x , y? :? x + y? ? ? ? ? ? ? ? ? ? ? ??
調用:f(6 + 8)? ? ?輸出:14? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
例2:?f = lambda : "沒有參數(shù)的lambda函數(shù)!"
調用:?print(f())? ? 輸出: 沒有參數(shù)的lambda函數(shù)!
函數(shù)是組織好,可重復使用的,用來實現(xiàn)相關功能的代碼段
函數(shù)提高了代碼的重復利用率和應用的模塊性。
除Python自帶的函數(shù)之外,也可以自己創(chuàng)建函數(shù),叫做自定義函數(shù)
語法:
函數(shù)代碼塊以 def 開頭
參數(shù)為 輸入值 ,放于函數(shù)名后口號里面,
函數(shù)內(nèi)容以冒號:開始,函數(shù)體縮進, return 返回 輸出值
函數(shù)調用使用關鍵字參數(shù)來確定傳入的參數(shù)值,此時,如果多個函數(shù)則不需要按照指定順序。
在定義函數(shù)時,指定參數(shù)默認值。調用時如果不傳入?yún)?shù),則使用默認值
不定長部分如果沒有指定參數(shù),傳入是一個空元組
加了 兩個星號 ** 的參數(shù)會以字典的形式導入
/ 用來指明函數(shù)形參必須使用指定位置參數(shù),不能使用關鍵字參數(shù)的形式。
3.8版本之后的才能使用
不使用 def 定義函數(shù),沒有函數(shù)名
lamdba主體時一個表達式,而不是代碼塊,函數(shù)體比def簡單很多
定義在函數(shù)內(nèi)部的為局部變量,僅能在函數(shù)內(nèi)部使用
定義在函數(shù)外部的為全局變量,可在全局使用
模塊是將包含所有定義的函數(shù)和變量的文件,一般將同類功能的函數(shù)組和在一起稱為模塊。
模塊需要導入后,在調用相應函數(shù)進行使用
模塊導入的方法:
從模塊中導入一個指定的部分
把一個模塊的所有內(nèi)容全都導入
1.1 例如:print(hex(2))案例
1.2 輸出函數(shù):print(hex(2))
1.3 輸出結果:0x2
1.4 解析說明:返回16進制的數(shù)。
2.1 例如:print(chr(10))案例
2.2 輸出函數(shù):print(chr(10))
2.3 輸出結果:0o12
2.4 解析說明:返回當前整數(shù)對應的ASCll碼
3.1 例如:print(ord("b"))案例
3.2 輸出函數(shù):print(ord("b"))
3.3 輸出結果:98
3.4 解析說明:返回當前ASCll碼的10進制數(shù)
4.1 例如:print(chr(97))
4.2 輸出函數(shù):print(chr(97))
4.3 輸出結果:b
4.4 解析說明:返回當前ASCll碼的10進制數(shù)。
案例一:給你一個字符串,s = 'hello kitty'
1.1 輸出函數(shù):print(s.capitalize())
1.2 輸出結果:0x2
1.3 解析說明:返回16進制的數(shù)。
2.1輸出函數(shù):print(s.replace('kitty','kuang'))
2.2 輸出結果:hello kuang
2.3 解析說明:替換功能,將kitty換成kuang。
2.4 輸出函數(shù):print(s.replace('4','KK'))
2.5 輸出結果:12KK12KK
2.6 解析說明:所有的4都替換成KK
2.7 輸出函數(shù):print(s.replace('4','KK'))
2.8 輸出結果:12KK12KK124
2.9 解析說明:將前兩個的4替換成go
案例一:給你一個字符串,ip = '192.168.1.1'
3.1 輸出函數(shù):print(ip.split(','))
3.2 輸出結果:['192.168.1.1']
3.3 解析說明:將字符串分割成列表
案例一:給你一個字符串,ip = '192.168.1.1'
3.3 輸出函數(shù):print(ip.split(',',2))
3.4 輸出結果:['192.168.1.1']
3.5 解析說明:從第二個開始分割成列表
python中eval函數(shù)用法如下:
1、計算字符串中有效的表達式,并返回結果。
2、將字符串轉成相應的對象(如list、tuple、dict和string之間的轉換)。
3、將利用反引號轉換的字符串再反轉回對象。
函數(shù)作用域:eval()函數(shù)并不會創(chuàng)建一個新的作用域,并且它的作用域就是它所在的作用域,有時候需要將eval()函數(shù)的作用域設置為全局,當然可以將eval()在全局作用域中使用,這個時候可以用window.eval()的方式實現(xiàn)。
參數(shù)情況:
(1)如果參數(shù)是一個表達式,eval() 函數(shù)將執(zhí)行表達式。
(2)如果參數(shù)是Javascript語句,eval()將執(zhí)行 Javascript 語句。
注意:如果執(zhí)行結果是一個值就返回,不是就返回undefined,如果參數(shù)不是一個字符串,則直接返回該參數(shù)。
通過關鍵字def來創(chuàng)建函數(shù),def的作用是實現(xiàn)python中函數(shù)的創(chuàng)建
函數(shù)定義過程:
函數(shù)名+()小括號執(zhí)行函數(shù)
函數(shù)體內(nèi)對全局變量只能讀取,不能修改
局部變量,無法在函數(shù)體外使用
python 使用 lambda 來創(chuàng)建匿名函數(shù)。
所謂匿名,意即不再使用 def 語句這樣標準的形式定義一個函數(shù)。
range()函數(shù)的用法如下:
(1)range(stop)
創(chuàng)建一個(0,stop)之間的整數(shù)序列,步長為1。
(2)range(start,stop)
創(chuàng)建一個(start,stop)之間的整數(shù)序列,步長為1。
(3)range(start,stop,step)
創(chuàng)建一個[start,stop)之間的整數(shù)序列,步長為step。
參數(shù)介紹:
start:表示從返回序列的起始編號,默認情況下從0開始。
stop:表示生成最多但不包括此數(shù)字的數(shù)字。
step:指的是序列中每個數(shù)字之間的差異,默認值為1。
range()是Python的內(nèi)置函數(shù),在用戶需要執(zhí)行特定次數(shù)的操作時使用它,表示循環(huán)的意思。內(nèi)置函數(shù)range()可用于以列表的形式生成數(shù)字序列。在range()函數(shù)中最常見用法是使用for和while循環(huán)迭代序列類型(List,string等)。
簡單的來說,range()函數(shù)允許用戶在給定范圍內(nèi)生成一系列數(shù)字。根據(jù)用戶傳遞給函數(shù)的參數(shù)數(shù)量,用戶可以決定該系列數(shù)字的開始和結束位置以及一個數(shù)字與下一個數(shù)字之間的差異有多大。