getattr函數(shù)
你所需要的網(wǎng)站建設(shè)服務(wù),我們均能行業(yè)靠前的水平為你提供.標(biāo)準(zhǔn)是產(chǎn)品質(zhì)量的保證,主要從事網(wǎng)站制作、做網(wǎng)站、企業(yè)網(wǎng)站建設(shè)、成都手機(jī)網(wǎng)站制作、網(wǎng)頁(yè)設(shè)計(jì)、成都品牌網(wǎng)站建設(shè)、網(wǎng)頁(yè)制作、做網(wǎng)站、建網(wǎng)站。創(chuàng)新互聯(lián)公司擁有實(shí)力堅(jiān)強(qiáng)的技術(shù)研發(fā)團(tuán)隊(duì)及素養(yǎng)的視覺設(shè)計(jì)專才。(1)使用 getattr 函數(shù),可以得到一個(gè)直到運(yùn)行時(shí)才知道名稱的函數(shù)的引用。
>>> li = ["Larry", "Curly"] >>> li.pop <built-in method pop of list object at 0x7fb75c255518> // 該語(yǔ)句獲取列表的 pop 方法的引用,注意該語(yǔ)句并不是調(diào)用 pop 方法,調(diào)用 pop 方法的應(yīng)該是 li.pop(), 這里指的是方法對(duì)象本身。 >>> getattr(li, "pop") <built-in method pop of list object at 0x7fb75c2556c8> // 該語(yǔ)句也是返回 pop 方法的引用,但是此時(shí),方法名稱是作為一個(gè)字符串參數(shù)傳遞給 getattr 函數(shù)的, getattr 是一個(gè)有用到令人無法致信的內(nèi)置函數(shù),可以返回任何對(duì)象的任何屬性。在這個(gè)例子中,對(duì)象是一個(gè) list, 屬性是 pop 方法。 >>> getattr(li, "append")("Moe") >>> li ['Larry', 'Curly', 'Moe'] // 如果不確信它是多么的有用,試試這個(gè): getattr 的返回值是 方法, 然后你就可以調(diào)用它,就像直接使用 li.append("Moe") 一樣, 但是實(shí)際上你沒有直接調(diào)用函數(shù), 只是以字符串形式指定了函數(shù)名稱。 >>> getattr({}, "clear") <built-in method clear of dict object at 0x7fb75c273b40> // getattr 也可以作用于字典。 >>> getattr((), "pop") Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'tuple' object has no attribute 'pop' // 理論上, getattr 可以作用于元組,但是由于元組沒有方法,所以不管你指定什么屬性名稱 getattr 都會(huì)引發(fā)一個(gè)異常。
新聞標(biāo)題:在Python中通過getattr獲取對(duì)象引用的方法-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://bm7419.com/article12/ipsdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站排名、微信小程序、網(wǎng)站營(yíng)銷、軟件開發(fā)、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容