Python基礎(chǔ)函數(shù)有哪些-創(chuàng)新互聯(lián)

本篇內(nèi)容介紹了“Python基礎(chǔ)函數(shù)有哪些”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計、成都做網(wǎng)站與策劃設(shè)計,普寧網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:普寧等地區(qū)。普寧做網(wǎng)站價格咨詢:13518219792

一、標準函數(shù) def

你可以定義一個由自己想要功能的函數(shù),以下是簡單的規(guī)則:

  • 函數(shù)代碼塊以 def 關(guān)鍵詞開頭,后接函數(shù)標識符名稱和圓括號 ()。

  • 任何傳入?yún)?shù)和自變量必須放在圓括號中間,圓括號之間可以用于定義參數(shù)。

  • 函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。

  • 函數(shù)內(nèi)容以冒號起始,并且縮進。

  • return [表達式] 結(jié)束函數(shù),選擇性地返回一個值給調(diào)用方。不帶表達式的return相當于返回 None。

語法:

def <name>(arg1, arg2,...argN):
    <statements>
    return <value>

二、匿名函數(shù) lambda

所謂匿名,意即不再使用 def 語句這樣標準的形式定義一個函數(shù)。

  • lambda 只是一個表達式,函數(shù)體比 def 簡單很多。

  • lambda的主體是一個表達式,而不是一個代碼塊。僅僅能在lambda表達式中封裝有限的邏輯進去。

  • lambda 函數(shù)擁有自己的命名空間,且不能訪問自己參數(shù)列表之外或全局命名空間里的參數(shù)。

  • 雖然lambda函數(shù)看起來只能寫一行,卻不等同于C或C++的內(nèi)聯(lián)函數(shù),后者的目的是調(diào)用小函數(shù)時不占用棧內(nèi)存從而增加運行效率。

語法:

lambda [arg1 [,arg2,.....argn]]:expression

實例:

# 可寫函數(shù)說明
sum = lambda arg1, arg2: arg1 + arg2;
# 調(diào)用sum函數(shù)
print ("相加后的值為 : ", sum( 10, 20 ))
print ("相加后的值為 : ", sum( 20, 20 ))
相加后的值為 :  30
相加后的值為 :  40

三、return 語句

return 語句用于退出函數(shù),選擇性地向調(diào)用方返回一個表達式。不帶參數(shù)值的return語句返回None。

語法:

return [表達式]

四、作用域

變量的作用域決定了在哪一部分程序可以訪問哪個特定的變量名稱。Python的作用域一共有4種,分別是:

  • L (Local) 局部作用域

  • E (Enclosing) 閉包函數(shù)外的函數(shù)中

  • G (Global) 全局作用域

  • B (Built-in) 內(nèi)建作用域

以 L –> E –> G –>B 的規(guī)則查找,即:在局部找不到,便會去局部外的局部找(例如閉包),再找不到就會去全局找,再者去內(nèi)建中找。

x = int(2.9)  # 內(nèi)建作用域
 
g_count = 0  # 全局作用域
def outer():
    o_count = 1  # 閉包函數(shù)外的函數(shù)中
    def inner():
        i_count = 2  # 局部作用域

Python 中只有模塊(module),類(class)以及函數(shù)(def、lambda)才會引入新的作用域,其它的代碼塊(如 if/elif/else/、try/except、for/while等)是不會引入新的作用域的,也就是說這這些語句內(nèi)定義的變量,外部也可以訪問

  • 全局變量和局部變量

    • 定義在函數(shù)內(nèi)部的變量擁有一個局部作用域,定義在函數(shù)外的擁有全局作用域。

    • 局部變量只能在其被聲明的函數(shù)內(nèi)部訪問,而全局變量可以在整個程序范圍內(nèi)訪問。調(diào)用函數(shù)時,所有在函數(shù)內(nèi)聲明的變量名稱都將被加入到作用域中。

  • global 和 nonlocal關(guān)鍵字

    當內(nèi)部作用域想修改外部作用域的變量時,就要用到global和nonlocal關(guān)鍵字了。

    • global

      num = 1
      def fun1():
          global num  # 需要使用 global 關(guān)鍵字聲明
          print(num)
          num = 123
          print(num)
      fun1()
       
      以上實例輸出結(jié)果:
      1
      123
    • nonlocal

      如果要修改嵌套作用域(enclosing 作用域,外層非全局作用域)中的變量則需要 nonlocal 關(guān)鍵字了。

      def outer():
          num = 10
          def inner():
              nonlocal num  # nonlocal關(guān)鍵字聲明
              num = 100
              print(num)
          inner()
          print(num)
      outer()
       
      以上實例輸出結(jié)果:
      100
      100

“Python基礎(chǔ)函數(shù)有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

文章標題:Python基礎(chǔ)函數(shù)有哪些-創(chuàng)新互聯(lián)
分享地址:http://muchs.cn/article2/dhghoc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、移動網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)網(wǎng)站收錄、動態(tài)網(wǎng)站網(wǎng)頁設(shè)計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管