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

python中根據(jù)字符串調(diào)用函數(shù)的實(shí)現(xiàn)方法

 更新時間:2016年06月12日 17:12:39   投稿:jingxian  
下面小編就為大家?guī)硪黄猵ython中根據(jù)字符串調(diào)用函數(shù)的實(shí)現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考,一起跟隨小編過來看看吧

在python中可以根據(jù)字符串來調(diào)用函數(shù):

1、使用getattr從字符串來調(diào)用函數(shù)

在多進(jìn)程中,可能傳遞過來的是一個字符串,那么我怎么來調(diào)用一個已經(jīng)存在的函數(shù)呢,主要就是使用到getattr函數(shù)的作用,這個函數(shù)就是在使用字符串得到這個字符串對應(yīng)的函數(shù)的對象,然后就可以進(jìn)行執(zhí)行,如下所示:

在模塊中,存在兩個函數(shù):

[root@python 530]# cat attr.py
#!/usr/bin/env python

def kel():
  print 'this is a kel function'


def smile():
  print 'this is a smile function'

if __name__ == '__main__':
  kel()
  smile()

在上面的attr模塊中,定義了兩個函數(shù),一個函數(shù)為kel,另外一個函數(shù)為smile,那么我根據(jù)字符串kel和smile怎么執(zhí)行函數(shù)呢,就是使用getattr函數(shù),如下所示:

>>> import attr
>>> k = getattr(attr,'kel')
>>> k()
this is a kel function
>>> s = getattr(attr,'smile')
>>> s()
this is a smile function
>>> e = getattr(attr,'errors')
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'errors'

在第一個中,直接導(dǎo)入模塊,那么模塊就是一個object,從而在getattr根據(jù)字符串kel獲取到attr中的kel()函數(shù),從而最后進(jìn)行執(zhí)行,這里也就實(shí)現(xiàn)了,根據(jù)字符串的不同,從而執(zhí)行相應(yīng)的函數(shù)。

2、 使用字典來調(diào)用函數(shù)

在上面模塊的定義不變,但是在調(diào)用的時候,可以定義一個字典,根據(jù)字典的值來進(jìn)行執(zhí)行函數(shù),如下所示:

>>> import attr
>>> d = {'kel':attr.kel,'smile':attr.smile}
>>> d['kel']()
this is a kel function
>>> d['smile']()
this is a smile function

從而可以使用字典值來進(jìn)行調(diào)用函數(shù)。

以上兩種方法主要就是用來,當(dāng)傳遞過來一個字符串的時候,我該如何調(diào)用其他函數(shù),那么第一種方法就是使用getattr來進(jìn)行執(zhí)行函數(shù);第二種方法就是預(yù)先定義一個字典,然后執(zhí)行字典的值即可。

以上這篇python中根據(jù)字符串調(diào)用函數(shù)的實(shí)現(xiàn)方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python多進(jìn)程方式抓取基金網(wǎng)站內(nèi)容的方法分析

    Python多進(jìn)程方式抓取基金網(wǎng)站內(nèi)容的方法分析

    這篇文章主要介紹了Python多進(jìn)程方式抓取基金網(wǎng)站內(nèi)容的方法,結(jié)合實(shí)例形式分析了Python多進(jìn)程抓取網(wǎng)站內(nèi)容相關(guān)實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下
    2019-06-06
  • 一文探索Python中PDF解析利器PDFMiner的使用

    一文探索Python中PDF解析利器PDFMiner的使用

    PDFMiner是一個強(qiáng)大的Python庫,用于解析PDF文檔并提取其中的文本內(nèi)容和數(shù)據(jù),本文將為大家介紹一下PDFMiner的具體使用,感興趣的可以了解下
    2024-11-11
  • pycharm與jupyter?lab/notebook結(jié)合使用方式

    pycharm與jupyter?lab/notebook結(jié)合使用方式

    這篇文章主要介紹了pycharm與jupyter?lab/notebook結(jié)合使用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • python圖片水印加密的幾種處理小結(jié)

    python圖片水印加密的幾種處理小結(jié)

    本文主要介紹了python圖片水印加密的幾種處理小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 解決pyinstaller打包exe可執(zhí)行文件后運(yùn)行找不到pandas或者XXX模塊

    解決pyinstaller打包exe可執(zhí)行文件后運(yùn)行找不到pandas或者XXX模塊

    這篇文章主要介紹了解決pyinstaller打包exe可執(zhí)行文件后運(yùn)行找不到pandas或者XXX模塊問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Python中順序表的實(shí)現(xiàn)簡單代碼分享

    Python中順序表的實(shí)現(xiàn)簡單代碼分享

    這篇文章主要介紹了Python中順序表的實(shí)現(xiàn)簡單代碼分享,展示了代碼運(yùn)行結(jié)果,然后分享了相關(guān)實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • pycharm2020.2 配置使用的方法詳解

    pycharm2020.2 配置使用的方法詳解

    這篇文章主要介紹了pycharm2020.2 配置使用的方法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • pygame多種方式實(shí)現(xiàn)屏保操作(自動切換、鼠標(biāo)切換、鍵盤切換)

    pygame多種方式實(shí)現(xiàn)屏保操作(自動切換、鼠標(biāo)切換、鍵盤切換)

    這篇文章主要介紹了pygame多種方式實(shí)現(xiàn)屏保操作(自動切換、鼠標(biāo)切換、鍵盤切換),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • Django上傳xlsx文件直接轉(zhuǎn)化為DataFrame或直接保存的方法

    Django上傳xlsx文件直接轉(zhuǎn)化為DataFrame或直接保存的方法

    這篇文章主要介紹了Django上傳xlsx文件直接轉(zhuǎn)化為DataFrame或直接保存的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • python topN 取最大的N個數(shù)或最小的N個數(shù)方法

    python topN 取最大的N個數(shù)或最小的N個數(shù)方法

    今天小編就為大家分享一篇python topN 取最大的N個數(shù)或最小的N個數(shù)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06

最新評論

连云港市| 洞头县| 雷山县| 安新县| 抚松县| 平利县| 康平县| 垦利县| 宁津县| 布拖县| 罗平县| 涿州市| 宝丰县| 上饶市| 永胜县| 宁夏| 尼勒克县| 黑山县| 合肥市| 连云港市| 板桥市| 法库县| 岐山县| 广平县| 日照市| 微山县| 罗源县| 林西县| 乐至县| 来凤县| 福清市| 云林县| 友谊县| 江川县| 连山| 汕尾市| 钟祥市| 无极县| 巫溪县| 德惠市| 唐河县|