亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問按老師的代碼寫,結果為什么是bound method.....

class?Programer(object):
????hobby='play?computer'
????def?__init__(self,name,age,weight):
????????self.name=name
????????self._age=age
????????self.__weight=weight
????def?self_intro(self):
????????print?'my?name?is?%s?\nI?am?%s?years?old\n'?%?(self.name,?self._age)
class?BackendProgramer(Programer):
????def?__init__(self,name,age,weight,language):
????????super(BackendProgramer,self).__init__(name,age,weight)
????????self.language?=?language
????def?self_intro(self):
????????print?'my?name?is?%s?\nmy?favourite?language?is?%s\n'?%?(self.name,?self.language)
def?intro(i):
????if?isinstance(i,Programer):
????????print?i.self_intro
if?__name__=='__main__':
????prog?=?Programer('Albert',25,'80')
????back_prog?=?BackendProgramer('Alex',23,'80','Ruby')
????intro(prog)
????intro(back_prog)

運行結果是:

<bound method Programer.self_intro of <__main__.Programer object at 0x030A5490>>

<bound method BackendProgramer.self_intro of <__main__.BackendProgramer object at 0x030A5510>>


正在回答

5 回答

17行出錯!類方法self_intro不能直接這樣調用,除非它本身是property一樣的屬性調用方法模式,那就可以不用加()

0 回復 有任何疑惑可以回復我~

第17行,i.self_intro改為i.self_intro()

0 回復 有任何疑惑可以回復我~

看不懂,不過我覺的把print i.self_intro() ?? 改成 return i.self_intro()?? 應該就不會有空值了

0 回復 有任何疑惑可以回復我~

為什么會返回none呢

0 回復 有任何疑惑可以回復我~
#1

那些青春很年少

函數沒有返回值時,直接輸出函數的結果,python會返回None
2019-06-02 回復 有任何疑惑可以回復我~

原來是print?i.self_intro忘記加()

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

請問按老師的代碼寫,結果為什么是bound method.....

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號