<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Python學習筆記三:函數(shù)

      函數(shù)

      1. 定義

        函數(shù):函數(shù)是事先組織好的,可重復使用的,用來實現(xiàn)單一,或相關聯(lián)功能的代碼塊/模塊。
        定義一個函數(shù):
        你可以定義一個由自己想要功能的函數(shù),以下是簡單的規(guī)則:
      • 函數(shù)代碼塊以 def 關鍵詞開頭,后接函數(shù)標識符名稱和圓括號()。
      • 任何傳入?yún)?shù)和自變量必須放在圓括號中間。圓括號之間可以用于定義參數(shù)。
      • 函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。文檔字符串用三引號(""" """)括起來。
      • 函數(shù)內容以冒號起始,并且縮進。
      • return [表達式] 結束函數(shù),選擇性地返回一個值給調用方。不帶表達式的return相當于返回 None。
      • 因為函數(shù)相對獨立,所以定義函數(shù)的上方(根據(jù)PEP8的要求)需要和上其他代碼(包括注釋)隔開兩個空行
      def greet_user(user):
          """顯示簡單的問候"""
          print("hello!%s%s" % (user, '。'))
      
      # 函數(shù)的調用
      greet_user('Smith')
      

        注意:

      • 定義一個函數(shù),只表示封裝了一段代碼,如果不主動調用,函數(shù)不會自行運行,所以在進行斷點調試時,不會有任何結果顯示
      •  基于Python的執(zhí)行順序是從上到下,所以如果想要調用一個函數(shù),必須在調用函數(shù)前,聲明定義這個函數(shù),否則會報錯

      2. 參數(shù)

        在定義函數(shù)時,函數(shù)名后括號內跟著的變量是形參,用來接收參數(shù),在函數(shù)內作為變量使用。

        調用函數(shù)時,指定的具體字符是實參。是用來將數(shù)據(jù)傳遞到函數(shù)內部的。

        以函數(shù)greet_user()為例,user是形參,'Smith'就是實參。函數(shù)在調用時,會將實參傳遞給函數(shù),存儲在形參里。

      2.1 位置實參

        一個函數(shù)中可以包含多個形參,也可以傳遞多個實參。

        傳遞實參的方法有很多,其中最常用的是位置實參和關鍵字實參兩種。

        位置實參:在向函數(shù)傳遞參數(shù)時,形參的位置和實參的位置一一對應,這樣的實參叫位置實參。

      def describe_animals(animal_type, pet_name):
          """顯示寵物信息"""
          print("I have a %s。" % animal_type)
          print("It's name is %s。" % pet_name)
      
      
      describe_animals('cat', 'kitty')
      

        注意:在傳遞位置實參時,形參和實參的對應位置非常重要。雖然不會報錯,但結果可能會讓人啼笑皆非

      describe_animals('kitty', 'cat')
      
      
      I have a kitty。
      It's name is cat。
      

      2.2 關鍵字實參

        在調用函數(shù)時,明確給出各個形參所對應的實參,這就是關鍵字實參。

      def describe_animals(animal_type, pet_name):
          """顯示寵物信息"""
          print("I have a %s。" % animal_type)
          print("It's name is %s。" % pet_name)
      
      
      describe_animals(animal_type='cat', pet_name='kitty')
      

      2.3 默認值

        在聲明函數(shù)時,可以事先給形參指定默認值,這樣調用時,可以只調用沒有默認值的形參。

        注意:使用默認值時,在形參列表中必須先列出沒有默認值的形參,再列出有默認值的實參。這讓Python依然能夠正確地解讀位置實參。

      def describe_animals(animal_type, pet_name='kitty'):
          """顯示寵物信息"""
          print("I have a %s。" % animal_type)
          print("It's name is %s。" % pet_name)
      
      
      describe_animals(animal_type='cat')
      

       2.4 傳遞任意數(shù)量的實參

        函數(shù)形參前的*號,表示創(chuàng)建一個形參名稱的元組,待調用函數(shù)時,Python會將傳遞進來的實參,全部封裝進這個元組。

        不管傳遞進來多少個實參,都會被封裝進一個元組內。

       

      def make_pizza(*toppings):
          """打印制作披薩的所有食材"""
          print("Making a piece of pizza with following toppings:")
          for topping in toppings:
              print(topping)
      
      
      make_pizza('mushrooms', 'green peppers', 'extra cheese') 

        注意:傳遞多個參數(shù),而不是傳遞一個含有多個元素的元組

      ① 結合位置實參和任意數(shù)量實參

        如果要讓函數(shù)接受不同類型的實參,必須在函數(shù)定義中將接納任意數(shù)量實參的形參放在后面。Python先匹配位置實參和關鍵字實參,再將余下的實參都封裝到最后一個形參中。

      def make_pizza(size, *toppings):
          """顯示制作披薩的所有用料"""
          print("Make a %d-inch pizza。" % size, end='')
          print("With following toppings:")
          for topping in toppings:
              print(topping)
      
      
      make_pizza(12, 'cheese', 'onion', 'mushrooms') 

      ② 任意數(shù)量的位置實參和默認值

        默認值和任意數(shù)字的位置實參結合時,默認值要放在前面。

      def make_pizza(size=10, *toppings):
          """顯示制作披薩的所有用料"""
          print("Make a %d-inch pizza。" % size, end='')
          print("With following toppings:")
          for topping in toppings:
              print(topping)
      
      
      make_pizza(12, 'cheese', 'onion', 'mushrooms')    

      ③ 任意數(shù)量的關鍵字實參

        函數(shù)形參前加上**,創(chuàng)建一個形參名稱的字典,待調用函數(shù)時,Python會傳遞進來的實參,全部封裝到這個字典中。

      def make_pizza(size, **toppings):
          """打印紙多披薩所需的原材料"""
          print("Make a %d-inch pizza with following toppings:" % size)
          topping = {}
          for key, value in toppings.items():
              topping[key] = value
              print(key.title()+':')
              print(value)
      
      
      make_pizza(size=10, vegetable='Cucumber', meat='bacon', seasoning='salt')

      ④ 任意數(shù)量的關鍵字實參和默認值

      def make_pizza(size=10, **toppings):
          """打印紙多披薩所需的原材料"""
          print("Make a %d-inch pizza with following toppings:" % size)
          topping = {}
          for key, value in toppings.items():
              topping[key] = value
              print(key.title()+':')
              print(value)
      
      
      make_pizza(size=12, vegetable='Cucumber', meat='bacon', seasoning='salt')

        總結:在Python中,函數(shù)的參數(shù)位置應該按照以下順序排序:

      1. 位置參數(shù)(必須參數(shù))
      2. 默認值參數(shù)
      3. 可變成位置參數(shù)(既:任意數(shù)量的位置參數(shù))
      4. 可變長關鍵字參數(shù)(既:任意數(shù)量的關鍵字參數(shù))
      def my_func(a, b, c=0, *args, **kwargs):
          pass
      
      
      my_func(1, 2, 3, 4, 5, x=6, y=7)
      
      1,2是位置參數(shù);3是默認值參數(shù);4,5是可變長位置參數(shù);x和6是關鍵字參數(shù),被封裝到kwargs名稱的字典傳遞給函數(shù)。 

      3. 返回值

      4. 變量

      變量分為局部變量和全局變量,局部變量的作用域為函數(shù)體,

      將局部變量聲明為全局變量,可以使用global關鍵字,這樣在函數(shù)體內部聲明的局部變量,就變成一個全局變量

      # 在函數(shù)體內聲明一個全局變量
      global var
      var = value

       

       

      模塊

      1. 定義

        在Python中,模塊是一個包含Python代碼的文件,它可以包含函數(shù)、類、變量和常量等。模塊可以被其他Python程序導入并使用,這樣可以避免重復編寫代碼,提高代碼的復用性和可維護性。

        簡單來說,每個帶.py后綴的文件就是一個模塊。

        Python中的模塊可以是標準庫模塊、第三方模塊或自定義模塊。標準庫模塊是Python自帶的模塊,包含了大量的常用功能,例如操作系統(tǒng)接口、文件I/O、字符串處理、網(wǎng)絡通信等。第三方模塊是由其他開發(fā)者編寫的模塊,可以通過pip等包管理工具安裝。自定義模塊是由開發(fā)者自己編寫的模塊,可以根據(jù)需要定義函數(shù)、類、變量和常量等。

      2. 模塊名

        在Python中,模塊名也是一個標識符,所以遵循:

      • 標識符由數(shù)字,字母和下劃線組成
      • 不能以數(shù)字開頭
      • 標識符的長度沒有限制,但為了方便使用,盡量做到簡單明了
      • 區(qū)分大小寫
      • 盡量避免使用系統(tǒng)自帶的關鍵字,例如:if,else,while,print等等

      3. 模塊的使用

      ① import語句

        模塊定義好后,我們可以使用import語句來引入模塊,具體語法:

      import module1[,module2,...modulen]
      module.function
      

        例如我們想要使用test1.py內的print_line()函數(shù),用法如下:

      # 導入模塊
      import test1
      # 調用test1.py中的print_line()函數(shù)
      test1.print_line() 

      ② from...import語句

        Python 的 from 語句讓你從模塊中導入一個指定的部分到當前命名空間中。語法如下:

      from module import function1[,function2,...functionN]
      

        有時為了方便,我們會使用as給指定函數(shù)起別名,之后此函數(shù)名要使用別名,而不是原來的名字

      from test1 import print_line as pl

      ③ 使用*導入模塊內的所有函數(shù)

      from module import *
      

        

       

       

       

       

       

       

       

      posted @ 2023-05-11 11:45  ISPEAKER  閱讀(71)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 边吃奶边添下面好爽| 亚洲爆乳WWW无码专区| 国产精品久久精品| 肉大捧一进一出免费视频| 欧洲无码一区二区三区在线观看 | 成人免费亚洲av在线| 风流老熟女一区二区三区| 精品国产美女av久久久久| 国产熟女激情一区二区三区| 神马视频| 亚洲国产日韩欧美一区二区三区| 人妻体内射精一区二区三四| 婷婷开心色四房播播| 亚洲人成小说网站色在线 | 一本精品中文字幕在线| 南通市| 国产精品久久久久久久久鸭| 九九热在线精品免费视频| 国产成AV人片久青草影院| 日本亚洲一区二区精品| 91亚洲国产成人久久蜜臀| 精品无码国产日韩制服丝袜| 色综合天天综合天天综| 国产一区精品综亚洲av| 国产精品自拍自在线播放| 国产精品一区二区三区三级| 左权县| 亚洲中文字幕精品第三区| 亚洲国产精品午夜福利| 成人乱人伦精品小说| 波多野结衣久久一区二区| 亚洲性日韩一区二区三区| 亚洲人成电影在线天堂色| 人人妻人人做人人爽夜欢视频| 亚洲高请码在线精品av| 伊人色综合久久天天小片| 一区二区三区不卡国产| 成人午夜在线观看刺激| 丁香五月婷激情综合第九色| 人妻日韩人妻中文字幕| 毛片网站在线观看|