一、定義函數 def 函數名():
函數體代碼
例:
#定義函數
def email():
print('send email')
#調用執行函數
email()
二、函數的返回值
def email():
print("send email")
return "發送成功"? ? ? ?#沒有return,默認返回None
ret = email()? ? ?#函數return后面是什么值,ret等于返回值
print(ret)
注意:一旦遇到return,函數內部return以下的代碼不再執行。
三、函數的普通參數
def email(address):? ? ?#address為形式參數
print(address)
return True
ret = email('123@qq.com')? ? ? ?#調用執行傳值,為實際參數
#傳參,默認是按順序傳值,也可以指定形參傳入實參,就可以不按順序
四、函數的默認參數
#注意:有默認值的參數要放在后面
def email(name, address="456@163.com"):? ? ? ? ? ? ?#name、address為形式參數,address有默認值為456@163.com
print(name, address)
return True
五、函數的動態參數
1)簡單的動態參數
#注意:加上一個*號,即可成為動態形式參數,轉換元組;加上兩個**號時,轉換成字典
def email(*addr, **address):
print(addr)
print(address)
email(11, 22, 33, k1 = 123, k2 = 456) #在動態函數參數中,可以傳入多個參數
結果:
(11,22,33)
{'k1':123, 'k2': 456}
2)為動態參數傳入列表、字典或元組
2.1)實參傳入列表
def f1(*args):
print(args)
li = [11,22,33,44] #列表
f1(li)? ? ? ? ?#結果為[11,22,33,44]
f1(*li)? ? ? ? #結果為(11,22,33,44),注意在傳入實參時,加入*號
2.2)實參傳入字典
def f2(**kwargs):
print(kwargs)
dic = {'k1':789} #傳入字典
f2(dic)? ? ? ? ? ?#結果報錯
f2(**dic)? ? ? ? #結果為{'k1':789},注意在傳入實參時,加入**號
六、全局變量、局部變量
P = "python"? ? ? ? ?#p為全局變量,變量名一般大寫,可以共享使用
def func():
a = 123? ? ? ? ? #a 為局部變量,變量名一般小寫,只能在func()函數中使用
#如果在函數內想修改全局變量,則需要使用關鍵字global
global P
P = "java"? ? ? ? ? ? #全局變量P的值被修改為"java"
print(a)? ? ? ? ? #結果為123
print(P)? ? ? ? #func()函數可以使用全局變量
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
