資源簡介 (共24張PPT)函數進階變量與返回值課前回顧一、Python語言編寫程序函數的時候具有兩類參數:形參與實參二、參數與變量有區別。變量在定義時一定要給它賦值。但是參數這種變量在函數定義時不用給它賦值,只有在調用函數時才給它賦值。三、函數也可以有兩個、三個,或者任意多個的參數,而不是只能有一個。也可以沒有參數。情境引入函數中不僅有著參數,也有著變量,那么函數中的變量和我們之前所學的變量是否相同呢?函數中還有return語句(返回值),我們對它也所知甚少,它又在函數中扮演著什么角色呢?循序漸進在python中,變量類似于標簽定義一個變量 a = 1給變量a重新賦值a = 2變量a賦值給另一個變量bb = a,此時創建新的標簽b,與標簽a一起貼在值上。循序漸進return pay - price * quantity上節課,return語句在這里,它把算出的找零金額返給調用函數的的地方這條代碼中返回值的值就是找零的金額新知教授2、返回值1、變量3、課堂總結變量思維構建變量的作用域Python創建、改變或查找變量名都是在命名空間中進行的,這個命名空間的范圍叫作變量的作用域。Value是英文值的意思猜猜variable name是什么意思?思維構建在創建變量時,Python將變量名被創建的地點關聯給一個特定的命名空間。也就是說在代碼中變量創建的位置決定了這個變量將存在于哪個命名空間,也就是它可以被訪問的范圍。如果把這個小人看作變量,那么小人所在的房子就是他的活動范圍(作用域)思維構建從變量作用域角度劃分,目前階段,我們可以簡單的把變量分為:局部變量和全局變量編玩邊學i = 1 # 全局變量idef func():j = 2 # 局部變量j簡單來說,我們把函數外的變量叫做全局變量,而函數里面定義的變量則稱為局部變量。接下來我們將分四種情況來了解全局變量與局部變量的使用全局局部房子看作函數,小人看作變量編玩邊學第一種情況:在函數內使用全局變量i = 1 # 全局變量idef func():print(i)func() # 調用函數輸出結果為1全局變量在函數外被定義,作用域包括函數內與函數外,所以在函數內依然可以被正常調用。編玩邊學第二種情況:在函數外使用局部變量def func():i = 1 # 局部變量iprint(i) # 調用函數程序運行會報錯局部變量在函數內被定義,它的作用域就在函數內,函數外無法進行調用。編玩邊學第三種情況:在函數中修改全局變量的值i = 1 # 全局變量idef func():i = i + 1 # 局部變量ifunc() # 調用函數此時程序運行會報錯Python默認函數內部為局部變量,此時i就變成了局部變量。由于局部變量i沒有聲明,所以沒法進行操作。編玩邊學第四種情況:在函數中修改全局變量i = 1 # 全局變量idef func():i = 2 # 局部變量Iprint(i)func() # 調用函數print(i)# 打印i調用函數func()會輸出2函數外打印i會輸出1當局部變量和全局變量重名,函數內部局部變量會將全局變量覆蓋。而局部變量的值當函數調用完就被釋放掉了,所以最后在函數外打印i的值還是全局變量i的值。返回值新知教授return返回值調用函數return語句的作用結束函數調用。返回指定的返回值編玩邊學函數返回值特性一:所有函數都有返回值,分為指定返回值與隱含返回值def showplus(x):print(x)return x + 1 # 指定返回值num = showplus(6) # 調用函數,輸出結果6print(num) # 打印num接收到的返回值,輸出結果7def showplus(x):print(x) # 隱含返回值num = showplus(6) # 輸出結果6print(num) # 輸出結果None1、函數體中 return 語句有指定返回值時返回的就是其值2、函數體中沒有 return 語句時,函數運行結束會隱式返回一個 None 作為返回值,類型是 NoneType,與 return 、return None 等效。編玩邊學函數返回值特性二:函數執行了return語句,函數會立刻返回,結束調用,return之后的其它語句都不會被執行了。def func():for i in range(5):return iprint(func()) # 輸出結果為0實際執行循環時,只執行了一次,整個循環就結束了。因為執行return后,就會立馬結束函數的調用編玩邊學函數返回值特性三:無論定義的是返回什么類型,return 只能返回單值,但值可以存在多個元素。def showlist():return 1,'a',5print(showlist()) # 輸出結果為元組(1,'a',5)return 1,'a',5 看似返回多個值,但隱式地被Python封裝成了一個元組返回編玩邊學函數返回值特性四:一個函數可以存在多條 return 語句,但只有一條可以被執行,如果沒有一條 reutrn 語句被執行,同樣會隱式調用 return None 作為返回值def showlist():return 1return 2print(showlist()) # 輸出結果為1只有return 1被執行了課堂總結1、函數的變量從變量作用域角度劃分,目前階段,我們可以簡單的把變量分為:局部變量和全局變量2、函數的返回值函數中return語句的作用是結束函數調用與返回指定的返回值分享交流同學們今天寫代碼有沒有遇到什么問題?演示今天打印的代碼同學們,要加油哦!下節課見啦 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫