標籤:變數 form 組合 代碼 username close print pen --
一、為什麼要使用函數?
因為如果沒有函數我們平時的代碼就會有很多重複
避免代碼重用
提升代碼的可讀性
二、函數的定義與調用:
1. def 函數名(參數1,參數2)
‘‘‘ 函數注釋‘‘‘
print(‘函數體‘)
return 傳回值
函數就是封裝一個功能
定義:
def 關鍵字開頭,空格之後接函數名和圓括弧,最後加一個冒號
def是固定的不能改變
函數名的定義和變數一樣 :數字字母底線 任意組合 ,不能是數字開頭 不能是關鍵字 要具有可描述性
函數的調用
傳回值=函數名(參數1,參數2)#記得函數名後面加括弧
下面我們先來定義一個求計算字串長度的函數。假如我們的len()函數現在不能用了,那麼我們就需要定義一個函數,求字串的長度。如果讓我們一次一次的去寫相同的代碼,會顯得很麻煩。這時候我們的函數就上場了。
def length(): s= ‘hello world‘ length = 0 for i in s : length +=1 print(length)print(length()) #因為沒有傳回值你列印最後會顯示一個nulldef length(): s= ‘bjbbabjsaofsa‘ num = 0 for i in s: num +=1 return num m = length()print(m)# print(length())#return的時候你可以定義一個變數來接收 也可以不接收直接列印 但是如果print就不可以 但是一般最好不要在函數中寫print太lowle
View Code函數的傳回值:
定義函數一般不要在函數中寫print
return
1、在函數中遇到return就結束函數
2、將值返還給函數的調用者
無return
return None
return一個值該值是什麼就返還什麼
大家看一下對與函數中只能存在一個return 因為第一個碰到return就把函數結束了
>>> def func(a, b ,c): return a return b>>> print(func(3, 7, 8))3 #只返回第一個return的3 因為碰到第一個return就把函數結束了 其他的return 存在的沒有意義了>>>
函數的傳遞參數:
兩個方面:
實參角度:
1形式參數和實際參數
def my_len(a): #這個a就是形式參數 用來接收實際參數的 return lprint(my_len(3)) #實際參數 實實在在存在的
View Code
2位置傳參 一 一對應
def func(a, b ,c): return a, b, cprint(func(2, 3,700)) #一一對應並且是當作一個元組列印出來
3、混合傳參----->關鍵字永遠在最後面
def func(a, b=30 ,c): #形式參數和實際參數的一樣都是直接賦值的要放在最後不然會報錯,這個你看b直接賦值了但是放在了中間就報錯 return a, b, c,print(func(2, 3,b=700))
def func(a, c ,b=40): return a, b, c #這個就是對的 就是全部都放在後面print(func(2, 3,b=700))
如果你return的好幾個值都在一起return那麼最後的傳回值顯示出來就在一個元組內
預設傳參:
def Info(username,sex=‘男‘): #定義一個預設參數 sex with open(‘one‘,encoding= ‘UTF-8‘,mode = ‘a‘)as f : #a就是追加內容 f.write(‘{}\t{}\n‘.format(username,sex))while True : username= input(‘輸入您的姓名:(男生為1開頭)‘).strip() if ‘1‘ in username : username =username[1:] Info(username) else : Info(username,sex=‘女‘)View Code
python ---------函數