1,避免**重用 2,提高**的可讀性
1,函式定義:
def func():
''' 函式注釋'''
print('函式體')
return 返回值
複製**
定義:def關鍵字開頭,空格之後接函式名和圓括號,最後還要加乙個冒號。 def是固定的,不能變。 函式名:函式名是包含字母,數字,下劃線的任意組合,但是不能以數字開頭。雖然函式名可以隨便取名,但是一般盡量定義成可以表示函式功能的。2,函式的呼叫返回值=函式名(引數1,引數2)#記得函式名後面加括號 下面我們先來定義乙個求計算字串長度的函式。假如我們的len()函式現在不能用了,那麼我們就需要定義乙個函式,求字串的長度。如果讓我們一次一次的去寫相同的**,會顯得很麻煩。這時候我們的函式就上場了。
## 1.給定乙個字串,呼叫函式,當他沒有返回值的時候返回null
def length():
s='hello world'
length=0
for i in s:
length+=1
print(length)
print(length())
複製**
## 2.return 必須放在函式裡,當函式有返回值的時候,必須用變數接收才會有效果
def length():
s='hello world'
length=0
for i in s:
length+=1
return length
print(length())
複製**
1.return的作用:結束乙個函式的執行 2.首先返回值可以是任意的資料型別。 3.函式可以有返回值:如果有返回值,必須要用變數接收才有效果 也可以沒有返回值: 沒有返回值的時候分三種情況: 1.當不寫return的時候,函式的返回值為none 2.當只寫乙個return的時候,函式的返回值為none 3.return none的時候,函式的返回值為none(幾乎不用) 4.return返回乙個值(乙個變數) 5.return返回多個值(多個變數):多個值之間用逗號隔開,以元組的形式返回。 接收:可以用乙個變數接收,也可以用多個變數接收,返回幾個就用幾個變數去接收函式有乙個或多個返回值:
def func():
a=111
b=[1,2,3]
c=#return a#返回乙個值
#return a,b,c#返回多個值,變數之間按逗號隔開,以元組的形式返回
print(func())
複製**
函式沒有返回值的函式
#1.不寫return時返回none
def func():
a=111
b=[1,2,3]
ret=func()
print(ret)
複製**
#2.只寫乙個return時返回none
def func():
a=111
b=[1,2,3]
return
ret=func()
print(ret)
複製**
#3.return none的時候返回none
def func():
a=111
b=[1,2,3]
return none
ret=func()
print(ret)
複製**
定義乙個列表,返回列表的最後乙個值
#方法一
def func():
list=['hello','egon',11,22]
return list[-1]
print(func())
複製**
#方法二
def func():
list=['hello','egon',11,22]
return list
m,n,k,g=func()#
print(g)
複製**
1.實參和形參形參:是函式定義時候定義的引數 實參:函式呼叫的時候傳進來的引數2.傳遞多個引數可以傳遞多個引數,多個引數之間用逗號隔開。 站在傳參的角度上,呼叫函式時傳引數有兩種方式: 1.按照位置傳引數 2.按照關鍵字傳引數 用法:1.位置引數必須在關鍵字引數的前面 2.對於乙個引數只能賦值一次
def fun(s):#引數接受:形式引數,簡稱形參'''
計算字串長度的函式---------函式的功能
引數s:接受要計算的字串--------引數的資訊
return:要計算字串長度 ---------返回值得資訊
''' length=0
for i in s:
length+=1
return length
ret=fun('helloword')#引數傳入:實際引數,簡稱實參
print(ret)
複製**
傳遞多個引數,實現比大小的功能
def my_max(a,b):#位置引數:按順序定義引數
if a>b:
return a
else:
return b
## 站在傳參的角度上
print(my_max(20,30))
print(my_max(10,20))## 1.按照位置傳參
print(my_max(b=50,a=30))## 2.按照關鍵字傳參
print(my_max(10,b=30))#3.位置和關鍵字傳參混搭
複製**
用法:為什麼要用預設引數?將變化比較小的值設定成預設引數(比如乙個班的男生多,女生就幾個,就可以設定個預設值引數) 定義:預設引數可以不傳,不傳的時候用的就是預設值,如果傳會覆蓋預設值。 預設的值是在定義函式的時候就已經確定了的預設引數
def stu_info(name,*** = "male"):
"""列印學生資訊函式,由於班中大部分學生都是男生,
所以設定預設引數***的預設值為'male'
"""print(name,***)
stu_info('alex')
stu_info('毛腿','female')
複製**
預設引數缺陷:預設引數是乙個可變資料型別
def default_param(a,l=):
print(l)
default_param('alex')
default_param('rgon')
輸出:['alex']
['alex', 'egon']
複製**
按位置傳值多餘的引數都由args統一接收,儲存成乙個元組的形式 按關鍵字傳值接受多個關鍵字引數,由kwargs接收,儲存成乙個典的形式 *args的應用
1 def fun(a,b,*args):
2 sum=a+b
3 for i in args:
4 sum+=i
5 return sum
6 print(fun(1,5,6,4))#輸出1+5+6+4的和
複製**
*kwargs的應用
def fun(a,b,**kwargs):
print(a,b,kwargs)
## 按照關鍵字傳引數
fun(a = 10,b = 20,cccc= 30,dddd = 50)#輸出10 20
def f(a,b,*args,defult=6,**kwargs):
## 位置引數,*args, 預設引數,**kwargs
print(a,b,args,defult,kwargs)
return a,b,args,defult,kwargs
#傳引數的時候:必須先按照位置傳引數,再按照關鍵字傳引數
print(f(1,2,7,8,ccc=10,der=5))
複製**
def 函式名(引數1,引數2,*args,預設引數,**kwargs): """注釋:函式功能和引數說明""" 函式體 …… return 返回值 初識python函式
一.函式 1.什麼是函式 函式是對功能或者動作的封裝 2.函式的語法和定義 def 函式名 函式體呼叫 函式名 3.關於函式的返回值 return 返回 1.當程式沒寫過return,不返回任何結果,除非你要接收,接收到的是none 2.當函式寫return值,有乙個返回值 3.當函式寫了retur...
python 初識函式
f x x 1 y x 1 函式是對功能或者動作的封裝 def 函式名 函式體呼叫 函式名 def play print 今天我想打籃球 print 今天我想玩遊戲 print 今天我想彈鋼琴 print 今天我想跳舞 play return 返回 1.當程式沒寫過return,不返回任何結果.如果...
python 之 初識函式
有很多大神寫了介紹函式是什麼的好博文,我自問無法超越,但是引用還是可以的,真的很好,適合反覆閱讀 我在這裡獲得過很多的幫助,所以膜拜他們 路飛的美女講師部落格 銀角大王部落格 感覺自己沒有寫下去的必要了 return的作用 1.函式執行完畢後,可以給呼叫者返回資料 2.一旦遇到return,結束當前...