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

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