今日有點(diǎn)晚,上午去hilston開會(huì) 廣東省科學(xué)院&白俄羅斯科學(xué)院所長會(huì)議。。。學(xué)習(xí)了一個(gè)上午,簡直收獲良多。。下午又多問題處理。。。。網(wǎng)站又聚餐。。只能回來加加班處理一下今日的內(nèi)容了(不堅(jiān)持,又被遺忘了),還是要堅(jiān)持一下學(xué)習(xí)Python,不然真是忘記忘記再忘記,之后就不搞了。。。
今日我們說函數(shù):
1. 函數(shù) 從小學(xué)-初中經(jīng)常說的x = y+1 ,x,y都是有因果關(guān)系的,我們叫函數(shù)。今日我們?cè)诰幊陶f的函數(shù)有區(qū)別的。他是一個(gè)代碼的報(bào)裝,當(dāng)然也有因果關(guān)系。你執(zhí)行/調(diào)用有相關(guān)的結(jié)果。例如:
def abc():
print("帥哥")
### def 是 define的縮寫,定義函數(shù)必須有的開頭;
### abc 是函數(shù)名字。。。方便調(diào)用。。。。其實(shí)可以這里理解 變量= xxxx ;同理 abc = 代碼;abc也是一個(gè)變量名字/函數(shù)名字。。。。
### print("帥哥") 是代碼---叫函數(shù)體(可以有N行)
### () 用來干啥的?有參數(shù) 你可以放。。沒有你可以不放。。。
格式:
def 函數(shù)名(參數(shù)):
函數(shù)體
就這樣的格式。。。。。。我們說一下 參數(shù)。。。(但是不建議大家死機(jī),只要知道位置參數(shù)就可以了)
def abc(a,b,c):
print(a)
print(b)
print(c)
####這里要說一下 調(diào)用 abc(1,2,3) 這樣個(gè)就是調(diào)用
def abc(a,b,c) ##a,b,c 叫位置參數(shù)
abc(1,2,3,) ##1,2,3 叫實(shí)參
參數(shù)還分:位置參數(shù),默認(rèn)參數(shù),不定長參數(shù)。。。是不是有點(diǎn)蒙?還是記得一種就可以了。。其他跟進(jìn)自己積累慢慢來就可以了。
不過我們還是要說一下:
1. 默認(rèn)參數(shù):
def abc(a,b,c=5)
print(a)
print(b)
print(c)
abc(1,3) ##輸出 1,3,5 ###為什么不用3個(gè)實(shí)參,就可以輸出5? 這就是默認(rèn)參數(shù)的作用,注意:位置參數(shù)是固定的a,b 就是1,3 不可能 a=3,b=1 位置參數(shù)是死的。。
2. 不定長參數(shù).
def abc(*args):
print(args)
abc(1,3,4,5) ###輸出是 元組 tuple....如何抽?。?
def abc(*args):
#print(args)
for i in args:
print(i)
abc(1,3,4,5) ####看看區(qū)別,是不是一個(gè)個(gè)顯示的。。。
所以一般人,我們不用*args,但是有時(shí)候迫于項(xiàng)目變化,預(yù)計(jì)到未知,還是可以這樣處理一下。。。
不長參數(shù),還有一個(gè)就是 **kargs ;跟*args 有什么區(qū)別,多一個(gè)*k
def abc(**kargs):
print(kargs)
abc(a=1,b=2,c=3) ###你會(huì)發(fā)現(xiàn)他是一個(gè)字典。。。所以如果不知道未來發(fā)展用多少個(gè)參數(shù),但是又要為他做準(zhǔn)備,開了一下字典這種吧,跟默認(rèn)參數(shù)是不是有點(diǎn)像。。。。這樣直接在函數(shù)體做 添加嗎。。。。
######################################################################################
函數(shù)中的 return 還是要說一下。。。
有些函數(shù)是不會(huì)有 return ,因?yàn)樗粫?huì) 對(duì)返回值有處理,有想法。這里我們要說明一下,你不添加(默認(rèn) return是 None),
一般函數(shù)體執(zhí)行完畢,如果你有對(duì)返回值有進(jìn)一步處理,你就會(huì)定義,后面編碼時(shí)候有關(guān)聯(lián)。是不是很抽象?
舉例:
def abc(a,b):
if a>b:
print("a>b")
elif a
def?。猓ǎ?br/> ?。校颍椋睿簦ǎ⑹堑模浅:茫ⅲ?br/> ?。幔ǎ?/p>
成都創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、雞西梨樹網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站定制開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為雞西梨樹等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。 b() #?;剀嚭?。。。
“是的,非常好”
“帥氣”
---------------為什么是這個(gè)順序?
1. 在b() 調(diào)用前,上面的都只是放在內(nèi)存,沒有執(zhí)行;
2. 在b 調(diào)用了?。帷∵@時(shí)候才執(zhí)行a的內(nèi)容,所以他在后面。。。。
+++++++++++++++++++++++++++++++++++++++++++
是不是內(nèi)容多了一點(diǎn),但是非常簡單,因?yàn)槲覀冇米詈唵蔚睦?,來搞掂你的疑惑,?nèi)容不用多,也不用難。
關(guān)鍵還是知道這函數(shù)什么,然后
函數(shù)就是用來 精簡你的 代碼的,重復(fù)的內(nèi)容,就嘗試去定義 函數(shù)吧。。。。例如
print("samly71帥氣“)?。#4蛴。保埃埃按?。。。。你牛逼了
print
print
print
----------------1000次,回頭第1個(gè)炒你。。。
也許你想到
for?。椤。椋睢。颍幔睿纾澹ǎ?,1001):
?。穑颍椋睿簦ǎⅲ螅幔恚欤罚睅洑狻埃? -----------------確實(shí)有進(jìn)步,但是如果?。担埃埃按文兀窟€有如果是你呢?
number?。健。椋睿穑酰簦ǎ⒋蛴〉拇螖?shù):?。ⅲ? content =?。椋睿穑酰簦ǎ⑤敵龅膬?nèi)容:?。ⅲ?
def print_content(number,content):
?。睿酰恚猓澹颉。健。椋睿簦ǎ睿酰恚猓澹颍 ? ##py2?。穑簦瑁铮睿场?duì)input的類型是不一樣的。。
?。妫铮颉。椤。椋睢。颍幔睿纾澹ǎ?,number+1):
?。穑颍椋睿簦ǎ悖铮睿簦澹睿簦?
print(number,content)
-----------------是不是,覺得比之前好多了?是的,需求對(duì)新人來說應(yīng)該不斷去消化,對(duì)自己提要求。。。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。