最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

在Python中將函數(shù)作為另一個函數(shù)的參數(shù)傳入并調(diào)用的方法

 更新時間:2019年01月22日 10:27:18   作者:BlackMatrix  
今天小編就為大家分享一篇在Python中將函數(shù)作為另一個函數(shù)的參數(shù)傳入并調(diào)用的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

在Python中,函數(shù)本身也是對象,所以可以將函數(shù)作為參數(shù)傳入另一函數(shù)并進(jìn)行調(diào)用

在舊版本中,可以使用apply(function, *args, **kwargs)進(jìn)行調(diào)用,但是在新版本中已經(jīng)移除,以function(*args, **kwargs)進(jìn)行替代,所以也不應(yīng)該再使用apply方法

示例代碼:

def func_a(func, *args, **kwargs):
  print(func(*args, **kwargs))

def func_b(*args):
  return args

if __name__ == '__main__':
  func_a(func_b, 1, 2, 3)

在代碼中,將函數(shù)func_b作為函數(shù)func_a的參數(shù)傳入,將函數(shù)func_b的參數(shù)以元組args傳入,并在調(diào)用func_b時,作為func_b的參數(shù)。

運行結(jié)果:

(1, 2, 3)

但是這里存在一個問題,但func_a和func_b需要同名的參數(shù)時,就會出現(xiàn)異常,如:

def func_a(arg_a, func, **kwargs):
  print(arg_a)
  print(func(**kwargs))

def func_b(arg_a):
  print(arg_a)

if __name__ == '__main__':
  func_a(arg_a='Hello Python', func=func_b)

異常信息:

TypeError: func_b() missing 1 required positional argument: 'arg_a'
 

雖然通過修改,手動將arg_a作為參數(shù)傳入func中進(jìn)行調(diào)用,可以正常運行,但這明顯不符合設(shè)計初衷:在func_a中執(zhí)行func(**kwargs)時,很可能并不知道func到底需要什么參數(shù)。換句話說,如果已經(jīng)提前知道需要調(diào)用什么函數(shù),那完全不必要把函數(shù)作為參數(shù)傳入另一個函數(shù)并調(diào)用,直接調(diào)用函數(shù)即可。

def func_a(arg_a, func, **kwargs):
  print(arg_a)
  func(arg_a=arg_a, **kwargs)

def func_b(arg_a):
  print(arg_a)

if __name__ == '__main__':
  func_a(arg_a='Hello Python', func=func_b)

當(dāng)加入第三個函數(shù),func_c,它不需要arg_a這個參數(shù)時,就會出現(xiàn)問題。

def func_a(arg_a, func, **kwargs):
  print(arg_a)
  func(arg_a=arg_a, **kwargs)

def func_b(arg_a):
  print(arg_a)

def func_c():
  print('Hello World')

if __name__ == '__main__':
  func_a(arg_a='Hello Python', func=func_b)
  func_a(arg_a='Hello Python', func=func_c)

以上這篇在Python中將函數(shù)作為另一個函數(shù)的參數(shù)傳入并調(diào)用的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python+Requests+PyTest+Excel+Allure?接口自動化測試實戰(zhàn)

    Python+Requests+PyTest+Excel+Allure?接口自動化測試實戰(zhàn)

    本文主要介紹了Python+Requests+PyTest+Excel+Allure?接口自動化測試實戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • Python裝飾器的應(yīng)用場景及實例用法

    Python裝飾器的應(yīng)用場景及實例用法

    在本篇內(nèi)容里小編給大家整理了一篇關(guān)于Python裝飾器的應(yīng)用場景及實例用法,有興趣的朋友們可以學(xué)習(xí)下。
    2021-04-04
  • Python模塊包中__init__.py文件功能分析

    Python模塊包中__init__.py文件功能分析

    這篇文章主要介紹了Python模塊包中__init__.py文件功能,簡單分析了__init__.py在調(diào)入模塊和包的過程中的作用,需要的朋友可以參考下
    2016-06-06
  • jupyter notebook運行代碼沒反應(yīng)且in[ ]沒有*

    jupyter notebook運行代碼沒反應(yīng)且in[ ]沒有*

    本文主要介紹了jupyter notebook運行代碼沒反應(yīng)且in[ ]沒有*,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • python -v 報錯問題的解決方法

    python -v 報錯問題的解決方法

    在本篇文章里小編給大家整理了關(guān)于python -v 報錯問題的解決方法及相關(guān)知識點,有興趣的朋友們可以學(xué)習(xí)下。
    2020-09-09
  • 在pycharm中執(zhí)行 os.makedirs 提示用戶名或密碼不正確的問題及解決方法

    在pycharm中執(zhí)行 os.makedirs 提示用戶名或密碼不正確的問題及解決方法

    這篇文章主要介紹了在pycharm中執(zhí)行 os.makedirs 提示用戶名或密碼不正確的問題及解決方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-01-01
  • Django使用詳解:ORM 的反向查找(related_name)

    Django使用詳解:ORM 的反向查找(related_name)

    今天小編就為大家分享一篇Django使用詳解:ORM 的反向查找(related_name),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Python對于json數(shù)據(jù)鍵值對遍歷

    Python對于json數(shù)據(jù)鍵值對遍歷

    這篇文章主要介紹了一文搞定Python中對于json數(shù)據(jù)鍵值對遍歷,Python中可以通過字典或者列表的遍歷方式來遍歷JSON格式的數(shù)據(jù)中的鍵值對,具體的遍歷方法取決于你將JSON數(shù)據(jù)解析后得到了一個字典對象還是一個列表對象,以及JSON數(shù)據(jù)的結(jié)構(gòu),需要的朋友可以參考下
    2023-04-04
  • 解決pycharm不能自動補全第三方庫的函數(shù)和屬性問題

    解決pycharm不能自動補全第三方庫的函數(shù)和屬性問題

    這篇文章主要介紹了解決pycharm不能自動補全第三方庫的函數(shù)和屬性問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 如何用Python編寫一個電子考勤系統(tǒng)

    如何用Python編寫一個電子考勤系統(tǒng)

    這篇文章主要介紹了用Python編寫一個電子考勤系統(tǒng),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02

最新評論

资阳市| 湖口县| 渭南市| 伊宁县| 阳朔县| 阿图什市| 琼结县| 治多县| 宁蒗| 琼海市| 周口市| 乌鲁木齐县| 甘肃省| 舟曲县| 云安县| 星子县| 闽清县| 库伦旗| 长寿区| 祁阳县| 商都县| 汾阳市| 从江县| 浦县| 巫溪县| 永泰县| 永泰县| 淮安市| 张家港市| 沅陵县| 高邑县| 兴国县| 康保县| 安多县| 炎陵县| 普格县| 连山| 阳泉市| 镇远县| 天祝| 城固县|