版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
計算機科學導論
——Python程序設(shè)計第7講函數(shù)的設(shè)計和使用商務(wù)信息學院信息管理系計算機科學導論
——Python程序設(shè)計第7講函數(shù)的設(shè)計和教師:柳青電子信箱:Liuq@辦公室:博識樓418電話:67703852答疑時間:周三34節(jié),8-15周周四5-8節(jié),1-16周周五1-4節(jié),1~6、8~10、14、16、17周夜間自習輔導時間:周四1112節(jié),1~10周教師信息2教師:柳青教師信息2期末考試題型(Python部分)——共50分填空題(5分)是非題(5分)程序設(shè)計題(40分)期末考試題型(Python部分)——共50分填空題(5分)函數(shù)的設(shè)計和使用問題的引入函數(shù)基礎(chǔ)知識函數(shù)的設(shè)計和使用問題的引入6.1問題的引入計算三個圓的面積和周長,這三個圓的面積分別為2,3,4。運行結(jié)果6.1問題的引入計算三個圓的面積和周長,這三個圓的面積分別思考這三段基本相同的代碼是否能夠只寫一次呢?對于這樣的問題,我們可以使用函數(shù)來解決,使計算圓面積和周長的這段代碼得以重用。思考這三段基本相同的代碼是否能夠只寫一次呢?6.2黑箱模型6.2黑箱模型6.3函數(shù)基礎(chǔ)知識6.3.1函數(shù)的概念及定義函數(shù)是一個具有特定功能的、被封裝的、可重用的程序。給這個程序段取一個名字,就可以在其他程序的任何地方通過這個名稱任意多次的運行這個語句塊。函數(shù)定義格式:def函數(shù)名([參數(shù)]):……(函數(shù)體)6.3函數(shù)基礎(chǔ)知識6.3.1函數(shù)的概念及定義例1定義一個輸出函數(shù),打印出HelloWorld!框圖
開始調(diào)用函數(shù)sayHello()結(jié)束運行結(jié)果程序保存為eg1_say.py例1定義一個輸出函數(shù),打印出HelloWorld!框圖6.3.2形參和實參在定義函數(shù)時,函數(shù)名后面括號中的變量稱為形參在調(diào)用函數(shù)時,可以通過參數(shù)將一些值傳遞給函數(shù)處理,這些在調(diào)用函數(shù)時提供給函數(shù)的值稱為實參。6.3.2形參和實參在定義函數(shù)時,函數(shù)名后面括號中的變量稱例26.1節(jié)中的問題用函數(shù)調(diào)用的辦法來編寫程序。運行結(jié)果程序保存為eg2_area.py例26.1節(jié)中的問題用函數(shù)調(diào)用的辦法來編寫程序。運行參數(shù)傳遞示意圖大路小路參數(shù)傳遞示意圖大路小路思考1通過改進eg1_say.py中的sayHello()函數(shù),使主程序中調(diào)用該函數(shù)能實現(xiàn)如下功能:sayHello(3)能打印出3個HelloWorld!sayHello(5)能打印出5個HelloWorld!運行結(jié)果思考1通過改進eg1_say.py中的sayHello()函例3編寫函數(shù),實現(xiàn)比較兩個數(shù)的大小,并輸出其中較大的數(shù),并調(diào)用函數(shù)運行結(jié)果程序保存為eg3_max.py例3編寫函數(shù),實現(xiàn)比較兩個數(shù)的大小,并輸出其中較6.3.3return語句return語句用來從一個函數(shù)中返回,即跳出函數(shù),也可用return語句從函數(shù)中返回一個值。例4用return語句返回值。程序保存為eg4_max.py運行結(jié)果6.3.3return語句return語句用來從一個函數(shù)例5編寫函數(shù),判斷一個年份是否為閏年。主程序輸入一個年份,調(diào)用函數(shù)進行判斷運行結(jié)果分析:閏年的定義是年份數(shù)能被4整除但不能被100整除,或者年份能被400整除。第1種做法:保存為eg5_year1.py例5編寫函數(shù),判斷一個年份是否為閏年。主程序輸入一個年份第2種做法:保存為eg5_year2.py第2種做法:保存為eg5_year2.py例6:編寫函數(shù),判斷一個數(shù)是否為水仙花數(shù)。主程序輸入一個數(shù),調(diào)用函數(shù)進行判斷運行結(jié)果分析:水仙花數(shù)是指一個n位數(shù)(n≥3),它的每個位上的數(shù)字的n次冪之和等于它本身。例如:13
+53+33
=153,則153是水仙花數(shù)。第1種做法:保存為eg6_flower1.py例6:編寫函數(shù),判斷一個數(shù)是否為水仙花數(shù)。主程序輸入一個數(shù),第2種做法:第2種做法:示例7:思考2編寫求兩個自然數(shù)的最大公約數(shù)的函數(shù),采用輾轉(zhuǎn)相除法。主程序輸入兩個數(shù),調(diào)用函數(shù)求出這兩個數(shù)的最大公約數(shù),并輸出。程序保存為eg7_div.py輾轉(zhuǎn)相除法的算法如下:1.兩個自然數(shù)X、Y(保證X>=Y)2.計算X除以Y的余數(shù)R3.若R不等于0則用Y替換X,用R替換Y,計算X除以Y的余數(shù)R重復步驟3示例7:思考2編寫求兩個自然數(shù)的最大公約數(shù)的函數(shù),采用輾轉(zhuǎn)相示例8:思考3編寫求素數(shù)的函數(shù)。用戶從鍵盤輸入一個整數(shù)n。系統(tǒng)產(chǎn)生n個100至999之間的隨機整數(shù)x,調(diào)用該函數(shù)判斷x是否為素數(shù)。若x為素數(shù),則打印輸出“x是素數(shù)”,否則輸出“x不是素數(shù)”,其中x采用字符串格式化方式“%d”用具體的值替換。程序保存為eg8_prime.py示例8:思考3編寫求素數(shù)的函數(shù)。用戶從鍵盤輸入一個整數(shù)n。系函數(shù)調(diào)用的步驟假設(shè)程序P現(xiàn)在執(zhí)行到了一個函數(shù)調(diào)用f(a),則經(jīng)過四個步驟來處理這個調(diào)用:調(diào)用者P在調(diào)用點暫停執(zhí)行(術(shù)語稱為P掛起)函數(shù)f的形式參數(shù)被賦予實際參數(shù)a的值執(zhí)行f的函數(shù)體F執(zhí)行完畢后,控制返回到P中調(diào)用點的下一條語句函數(shù)調(diào)用的步驟假設(shè)程序P現(xiàn)在執(zhí)行到了一個函數(shù)調(diào)用f(a),則為什么用函數(shù)?生成一個新的函數(shù)給你一個命名一組語句的機會,這使得你的程序更容易讀和調(diào)試。通過避免重復調(diào)用代碼,函數(shù)使得程序更小之后,如果你要做個變動,你只需在一處變動即可。將一個長程序分解為函數(shù),允許你一次調(diào)試一部分,然后將它們集成為一個可行的整體。良好設(shè)計的函數(shù)經(jīng)常對多個程序都有用。一旦你寫出并調(diào)試了一個函數(shù),你可以重用它。為什么用函數(shù)?生成一個新的函數(shù)給你一個命名一組語句的機會,這例2中計算圓的面積和周長運行結(jié)果思考3:在circle函數(shù)中不寫print語句,如何實現(xiàn)計算圓的面積和周長并打印輸出例2中計算圓的面積和周長運行結(jié)果思考3:在circle函數(shù)中試驗,結(jié)果的顯示是什么?說明什么問題?運行結(jié)果思考4:得到如下的運行結(jié)果,程序如何改進?程序保存為eg2_circle.py試驗,結(jié)果的顯示是什么?說明什么問題?運行結(jié)果思考4:得到如函數(shù)小結(jié)1定義函數(shù)時,需要確定函數(shù)名和參數(shù)個數(shù);如果有必要,可以先對參數(shù)的數(shù)據(jù)類型做檢查;函數(shù)體內(nèi)部可以用return隨時返回函數(shù)結(jié)果;函數(shù)執(zhí)行完畢也沒有return語句時,自動returnNone。函數(shù)可以同時返回多個值,但其實就是一個tuple。函數(shù)小結(jié)1定義函數(shù)時,需要確定函數(shù)名和參數(shù)個數(shù);示例9:求階乘的函數(shù),保存為eg9_jc.py運行結(jié)果:思考5:如何利用該函數(shù)寫出求1!+2!+3!+…+n!的函數(shù)?示例9:求階乘的函數(shù),保存為eg9_jc.py運行結(jié)果:思考示例10編寫求1!+2!+3!+…+n!的函數(shù)程序保存為eg10_add.py運行結(jié)果:示例10編寫求1!+2!+3!+…+n!的函數(shù)程序保存為e示例11——遞歸函數(shù)在函數(shù)內(nèi)部,可以調(diào)用其他函數(shù)。如果一個函數(shù)在內(nèi)部調(diào)用自身本身,這個函數(shù)就是遞歸函數(shù)。用遞歸的思想來實現(xiàn)階乘函數(shù),然后調(diào)用該函數(shù)求某數(shù)的階乘,程序保存為eg11_dg.py0!=1N!=n*(n-1)!示例11——遞歸函數(shù)在函數(shù)內(nèi)部,可以調(diào)用其他函數(shù)。如果一個函執(zhí)行過程如果輸入的值是3ff(3)3*ff(2)3*(2*ff(1))3*(2*(1*ff(0)))3*(2*(1*1))3*(2*1)3*(2)6執(zhí)行過程如果輸入的值是3遞歸函數(shù)的優(yōu)缺點使用遞歸函數(shù)的優(yōu)點是邏輯簡單清晰,缺點是過深的調(diào)用會導致棧溢出。遞歸函數(shù)的優(yōu)缺點使用遞歸函數(shù)的優(yōu)點是邏輯簡單清晰,缺點是過深6.4變量的作用域當引入函數(shù)的概念之后,就出現(xiàn)了變量作用域的問題。變量起作用的范圍稱為變量的作用域。一個變量在函數(shù)外部定義和在函數(shù)內(nèi)部定義,其作用域是不同的。如果我們用特殊的關(guān)鍵字定義一個變量,也會改變其作用域。6.4變量的作用域當引入函數(shù)的概念之后,就出現(xiàn)了變量作用域6.4.1局部變量在函數(shù)內(nèi)定義的變量只在該函數(shù)內(nèi)起作用,稱為局部變量。例12使用局部變量運行結(jié)果6.4.1局部變量在函數(shù)內(nèi)定義的變量只在該函數(shù)內(nèi)起作用,6.4.2全局變量如果想要在函數(shù)內(nèi)部給一個定義在函數(shù)外的變量賦值,那么這個變量就不能是局部的,其作用域必須為全局的,能夠同時作用于函數(shù)內(nèi)外,稱為全局變量,可以通過global來定義。一個變量已在函數(shù)外定義,如果在函數(shù)內(nèi)需要為這個變量賦值,并要將這個賦值結(jié)果反映到函數(shù)外,可以在函數(shù)內(nèi)用global聲明這個變量,將其定義為全局變量。在函數(shù)內(nèi)部直接將一個變量聲明為全局變量,在函數(shù)外沒有聲明,在調(diào)用這個函數(shù)之后,將增加為新的全局變量。6.4.2全局變量如果想要在函數(shù)內(nèi)部給一個定義在函數(shù)外的例13在函數(shù)內(nèi)使用外部定義的全局變量運行結(jié)果例13在函數(shù)內(nèi)使用外部定義的全局變量運行結(jié)果例14把函數(shù)內(nèi)定義的變量聲明為全局變量運行結(jié)果例14把函數(shù)內(nèi)定義的變量聲明為全局變量運行結(jié)果6.5參數(shù)的類型6.5.1默認參數(shù)def函數(shù)名(形參名=默認值,……)例15使用默認參數(shù)值運行結(jié)果6.5參數(shù)的類型6.5.1默認參數(shù)運行結(jié)果參數(shù)的類型——默認參數(shù)具有默認值的參數(shù)稱為默認參數(shù)如果要設(shè)置形參的默認值,必須將這個參數(shù)放到形參列表的末尾不能先聲明有默認值的形參,而后聲明沒有默認值的形參deffunc(a,b=5)有效deffunc(a=5,b)無效參數(shù)的類型——默認參數(shù)具有默認值的參數(shù)稱為默認參數(shù)6.5.2關(guān)鍵參數(shù)如果某個函數(shù)有多個參數(shù),在調(diào)用函數(shù)時,如果不想按順序為形參傳遞值,那么可以通過命名來為參數(shù)賦值,這稱為關(guān)鍵參數(shù)。(指實參)例16使用關(guān)鍵參數(shù)運行結(jié)果6.5.2關(guān)鍵參數(shù)如果某個函數(shù)有多個參數(shù),在調(diào)用函數(shù)時,6.5.3可變長度參數(shù)前面的介紹內(nèi)容中,一個實參只能接收一個形參。有的時候讓用戶提供任意數(shù)量的參數(shù)是很有用的。在Python中用戶可以給函數(shù)提供可變長度的參數(shù)。實現(xiàn)方法:在定義函數(shù)的時候,在參數(shù)前面使用標識符*就可以實現(xiàn)。6.5.3可變長度參數(shù)前面的介紹內(nèi)容中,一個實參只能接收例17可變長度參數(shù)實參是多個值,形參獲得一個元組可變長度參數(shù)指形參運行結(jié)果例17可變長度參數(shù)實參是多個值,形參獲得一個元組運行結(jié)果例18可變長度參數(shù)與其他普通參數(shù)聯(lián)合使用可變長度參數(shù)與其他普通參數(shù)組合,通常將可變長度參數(shù)放在形參列表的最后運行結(jié)果例18可變長度參數(shù)與其他普通參數(shù)聯(lián)合使用可變長度參數(shù)與其例19在形參前加上**,可以引用一個字典實參通過關(guān)鍵參數(shù)指定鍵值對,形參獲得一個字典運行結(jié)果例19在形參前加上**,可以引用一個字典實參通過關(guān)鍵參數(shù)6.5.4序列作實參1.系列實參t傳遞給系列形參a例20運行結(jié)果6.5.4序列作實參1.系列實參t傳遞給系列形參a運行結(jié)6.5.4序列作實參2.系列實參t傳遞給多個單變量形參a,b,c例21運行結(jié)果6.5.4序列作實參2.系列實參t傳遞給多個單變量形參a練習完成示例及思考題分別用一般方法和遞歸函數(shù)來實現(xiàn)Fibonacci數(shù)列練習完成示例及思考題eg7_div.pyeg7_div.pyeg8_prime.pyeg8_prime.pyeg2_circle.pyeg2_circle.py
THANKYOU!THANKYOU!計算機科學導論
——Python程序設(shè)計第7講函數(shù)的設(shè)計和使用商務(wù)信息學院信息管理系計算機科學導論
——Python程序設(shè)計第7講函數(shù)的設(shè)計和教師:柳青電子信箱:Liuq@辦公室:博識樓418電話:67703852答疑時間:周三34節(jié),8-15周周四5-8節(jié),1-16周周五1-4節(jié),1~6、8~10、14、16、17周夜間自習輔導時間:周四1112節(jié),1~10周教師信息52教師:柳青教師信息2期末考試題型(Python部分)——共50分填空題(5分)是非題(5分)程序設(shè)計題(40分)期末考試題型(Python部分)——共50分填空題(5分)函數(shù)的設(shè)計和使用問題的引入函數(shù)基礎(chǔ)知識函數(shù)的設(shè)計和使用問題的引入6.1問題的引入計算三個圓的面積和周長,這三個圓的面積分別為2,3,4。運行結(jié)果6.1問題的引入計算三個圓的面積和周長,這三個圓的面積分別思考這三段基本相同的代碼是否能夠只寫一次呢?對于這樣的問題,我們可以使用函數(shù)來解決,使計算圓面積和周長的這段代碼得以重用。思考這三段基本相同的代碼是否能夠只寫一次呢?6.2黑箱模型6.2黑箱模型6.3函數(shù)基礎(chǔ)知識6.3.1函數(shù)的概念及定義函數(shù)是一個具有特定功能的、被封裝的、可重用的程序。給這個程序段取一個名字,就可以在其他程序的任何地方通過這個名稱任意多次的運行這個語句塊。函數(shù)定義格式:def函數(shù)名([參數(shù)]):……(函數(shù)體)6.3函數(shù)基礎(chǔ)知識6.3.1函數(shù)的概念及定義例1定義一個輸出函數(shù),打印出HelloWorld!框圖
開始調(diào)用函數(shù)sayHello()結(jié)束運行結(jié)果程序保存為eg1_say.py例1定義一個輸出函數(shù),打印出HelloWorld!框圖6.3.2形參和實參在定義函數(shù)時,函數(shù)名后面括號中的變量稱為形參在調(diào)用函數(shù)時,可以通過參數(shù)將一些值傳遞給函數(shù)處理,這些在調(diào)用函數(shù)時提供給函數(shù)的值稱為實參。6.3.2形參和實參在定義函數(shù)時,函數(shù)名后面括號中的變量稱例26.1節(jié)中的問題用函數(shù)調(diào)用的辦法來編寫程序。運行結(jié)果程序保存為eg2_area.py例26.1節(jié)中的問題用函數(shù)調(diào)用的辦法來編寫程序。運行參數(shù)傳遞示意圖大路小路參數(shù)傳遞示意圖大路小路思考1通過改進eg1_say.py中的sayHello()函數(shù),使主程序中調(diào)用該函數(shù)能實現(xiàn)如下功能:sayHello(3)能打印出3個HelloWorld!sayHello(5)能打印出5個HelloWorld!運行結(jié)果思考1通過改進eg1_say.py中的sayHello()函例3編寫函數(shù),實現(xiàn)比較兩個數(shù)的大小,并輸出其中較大的數(shù),并調(diào)用函數(shù)運行結(jié)果程序保存為eg3_max.py例3編寫函數(shù),實現(xiàn)比較兩個數(shù)的大小,并輸出其中較6.3.3return語句return語句用來從一個函數(shù)中返回,即跳出函數(shù),也可用return語句從函數(shù)中返回一個值。例4用return語句返回值。程序保存為eg4_max.py運行結(jié)果6.3.3return語句return語句用來從一個函數(shù)例5編寫函數(shù),判斷一個年份是否為閏年。主程序輸入一個年份,調(diào)用函數(shù)進行判斷運行結(jié)果分析:閏年的定義是年份數(shù)能被4整除但不能被100整除,或者年份能被400整除。第1種做法:保存為eg5_year1.py例5編寫函數(shù),判斷一個年份是否為閏年。主程序輸入一個年份第2種做法:保存為eg5_year2.py第2種做法:保存為eg5_year2.py例6:編寫函數(shù),判斷一個數(shù)是否為水仙花數(shù)。主程序輸入一個數(shù),調(diào)用函數(shù)進行判斷運行結(jié)果分析:水仙花數(shù)是指一個n位數(shù)(n≥3),它的每個位上的數(shù)字的n次冪之和等于它本身。例如:13
+53+33
=153,則153是水仙花數(shù)。第1種做法:保存為eg6_flower1.py例6:編寫函數(shù),判斷一個數(shù)是否為水仙花數(shù)。主程序輸入一個數(shù),第2種做法:第2種做法:示例7:思考2編寫求兩個自然數(shù)的最大公約數(shù)的函數(shù),采用輾轉(zhuǎn)相除法。主程序輸入兩個數(shù),調(diào)用函數(shù)求出這兩個數(shù)的最大公約數(shù),并輸出。程序保存為eg7_div.py輾轉(zhuǎn)相除法的算法如下:1.兩個自然數(shù)X、Y(保證X>=Y)2.計算X除以Y的余數(shù)R3.若R不等于0則用Y替換X,用R替換Y,計算X除以Y的余數(shù)R重復步驟3示例7:思考2編寫求兩個自然數(shù)的最大公約數(shù)的函數(shù),采用輾轉(zhuǎn)相示例8:思考3編寫求素數(shù)的函數(shù)。用戶從鍵盤輸入一個整數(shù)n。系統(tǒng)產(chǎn)生n個100至999之間的隨機整數(shù)x,調(diào)用該函數(shù)判斷x是否為素數(shù)。若x為素數(shù),則打印輸出“x是素數(shù)”,否則輸出“x不是素數(shù)”,其中x采用字符串格式化方式“%d”用具體的值替換。程序保存為eg8_prime.py示例8:思考3編寫求素數(shù)的函數(shù)。用戶從鍵盤輸入一個整數(shù)n。系函數(shù)調(diào)用的步驟假設(shè)程序P現(xiàn)在執(zhí)行到了一個函數(shù)調(diào)用f(a),則經(jīng)過四個步驟來處理這個調(diào)用:調(diào)用者P在調(diào)用點暫停執(zhí)行(術(shù)語稱為P掛起)函數(shù)f的形式參數(shù)被賦予實際參數(shù)a的值執(zhí)行f的函數(shù)體F執(zhí)行完畢后,控制返回到P中調(diào)用點的下一條語句函數(shù)調(diào)用的步驟假設(shè)程序P現(xiàn)在執(zhí)行到了一個函數(shù)調(diào)用f(a),則為什么用函數(shù)?生成一個新的函數(shù)給你一個命名一組語句的機會,這使得你的程序更容易讀和調(diào)試。通過避免重復調(diào)用代碼,函數(shù)使得程序更小之后,如果你要做個變動,你只需在一處變動即可。將一個長程序分解為函數(shù),允許你一次調(diào)試一部分,然后將它們集成為一個可行的整體。良好設(shè)計的函數(shù)經(jīng)常對多個程序都有用。一旦你寫出并調(diào)試了一個函數(shù),你可以重用它。為什么用函數(shù)?生成一個新的函數(shù)給你一個命名一組語句的機會,這例2中計算圓的面積和周長運行結(jié)果思考3:在circle函數(shù)中不寫print語句,如何實現(xiàn)計算圓的面積和周長并打印輸出例2中計算圓的面積和周長運行結(jié)果思考3:在circle函數(shù)中試驗,結(jié)果的顯示是什么?說明什么問題?運行結(jié)果思考4:得到如下的運行結(jié)果,程序如何改進?程序保存為eg2_circle.py試驗,結(jié)果的顯示是什么?說明什么問題?運行結(jié)果思考4:得到如函數(shù)小結(jié)1定義函數(shù)時,需要確定函數(shù)名和參數(shù)個數(shù);如果有必要,可以先對參數(shù)的數(shù)據(jù)類型做檢查;函數(shù)體內(nèi)部可以用return隨時返回函數(shù)結(jié)果;函數(shù)執(zhí)行完畢也沒有return語句時,自動returnNone。函數(shù)可以同時返回多個值,但其實就是一個tuple。函數(shù)小結(jié)1定義函數(shù)時,需要確定函數(shù)名和參數(shù)個數(shù);示例9:求階乘的函數(shù),保存為eg9_jc.py運行結(jié)果:思考5:如何利用該函數(shù)寫出求1!+2!+3!+…+n!的函數(shù)?示例9:求階乘的函數(shù),保存為eg9_jc.py運行結(jié)果:思考示例10編寫求1!+2!+3!+…+n!的函數(shù)程序保存為eg10_add.py運行結(jié)果:示例10編寫求1!+2!+3!+…+n!的函數(shù)程序保存為e示例11——遞歸函數(shù)在函數(shù)內(nèi)部,可以調(diào)用其他函數(shù)。如果一個函數(shù)在內(nèi)部調(diào)用自身本身,這個函數(shù)就是遞歸函數(shù)。用遞歸的思想來實現(xiàn)階乘函數(shù),然后調(diào)用該函數(shù)求某數(shù)的階乘,程序保存為eg11_dg.py0!=1N!=n*(n-1)!示例11——遞歸函數(shù)在函數(shù)內(nèi)部,可以調(diào)用其他函數(shù)。如果一個函執(zhí)行過程如果輸入的值是3ff(3)3*ff(2)3*(2*ff(1))3*(2*(1*ff(0)))3*(2*(1*1))3*(2*1)3*(2)6執(zhí)行過程如果輸入的值是3遞歸函數(shù)的優(yōu)缺點使用遞歸函數(shù)的優(yōu)點是邏輯簡單清晰,缺點是過深的調(diào)用會導致棧溢出。遞歸函數(shù)的優(yōu)缺點使用遞歸函數(shù)的優(yōu)點是邏輯簡單清晰,缺點是過深6.4變量的作用域當引入函數(shù)的概念之后,就出現(xiàn)了變量作用域的問題。變量起作用的范圍稱為變量的作用域。一個變量在函數(shù)外部定義和在函數(shù)內(nèi)部定義,其作用域是不同的。如果我們用特殊的關(guān)鍵字定義一個變量,也會改變其作用域。6.4變量的作用域當引入函數(shù)的概念之后,就出現(xiàn)了變量作用域6.4.1局部變量在函數(shù)內(nèi)定義的變量只在該函數(shù)內(nèi)起作用,稱為局部變量。例12使用局部變量運行結(jié)果6.4.1局部變量在函數(shù)內(nèi)定義的變量只在該函數(shù)內(nèi)起作用,6.4.2全局變量如果想要在函數(shù)內(nèi)部給一個定義在函數(shù)外的變量賦值,那么這個變量就不能是局部的,其作用域必須為全局的,能夠同時作用于函數(shù)內(nèi)外,稱為全局變量,可以通過global來定義。一個變量已在函數(shù)外定義,如果在函數(shù)內(nèi)需要為這個變量賦值,并要將這個賦值結(jié)果反映到函數(shù)外,可以在函數(shù)內(nèi)用global聲明這個變量,將其定義為全局變量。在函數(shù)內(nèi)部直接將一個變量聲明為全局變量,在函數(shù)外沒有聲明,在調(diào)用這個函數(shù)之后,將增加為新的全局變量。6.4.2全局變量如果想要在函數(shù)內(nèi)部給一個定義在函數(shù)外的例13在函數(shù)內(nèi)使用外部定義的全局變量運行結(jié)果例13在函數(shù)內(nèi)使用外部定義的全局變量運行結(jié)果例14把函數(shù)內(nèi)定義的變量聲明為全局變量運行結(jié)果例14把函數(shù)內(nèi)定義的變量聲明為全局變量運行結(jié)果6.5參數(shù)的類型6.5.1默認參數(shù)def函數(shù)名(形參
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 長治2024年山西長治文化藝術(shù)學校(豫劇團)招聘豫劇演員專業(yè)技術(shù)人員筆試歷年典型考點(頻考版試卷)附帶答案詳解版
- 胃痛治療策略優(yōu)化-洞察分析
- 文學風格自適應(yīng)生成-洞察分析
- 2023年-2024年安全管理人員安全教育培訓試題帶下載答案可打印
- 2023年企業(yè)主要負責人安全培訓考試題及參考答案(培優(yōu)A卷)
- 2023年項目部安全管理人員安全培訓考試題含答案(新)
- 2023年-2024年項目安全培訓考試題附參考答案(能力提升)
- 質(zhì)量通病與防治:電梯施工通病防治措施
- 傳染病報告制度及流程
- 互聯(lián)網(wǎng)公司市場部職責及崗位職責
- 本霍根的五堂課中文版
- 市政設(shè)施維護工程道路橋梁維護施工與方案
- 腦出血入院記錄
- 中華傳統(tǒng)文化之文學瑰寶學習通超星課后章節(jié)答案期末考試題庫2023年
- 自粘聚合物改性瀝青防水卷材施工工藝與規(guī)程
- 44危險化學品安全技術(shù)說明書(汽油、柴油)
- 碳晶板裝修合同范本
- 機械原理課程設(shè)計-自動蓋章機
- 供應(yīng)室提高腔鏡器械清洗質(zhì)量PDCA案例
- 格力空調(diào)檢測報告KFR-35GW(35530)FNhAk-B1(性能)
- 農(nóng)業(yè)氣象觀測規(guī)范+青花椒DB50-T 1358-2023
評論
0/150
提交評論