新語法知識:__str__(self) 解釋一下:只要在類中定義了__str__(self) 方法,,那么當(dāng)使用print 打印實例對象的時候,,就會直接打印出在這個方法中return 的數(shù)據(jù),。 來個代碼解釋一下: def __init__(self, name, author, comment, state = 0): return '名稱:《%s》 作者:%s 推薦語:%s\n狀態(tài):%s ' % (self.name, self.author, self.comment, status) book1 = Book('像自由一樣美麗', '林達(dá)', '你要用光明來定義黑暗,用黑暗來定義光明') # 傳入?yún)?shù),,創(chuàng)建實例 #調(diào)用實例方法show_info(),,打印出返回值
如果你把這里的show_info改成__str__(self)后,代碼是這樣的: def __init__(self, name, author, comment, state = 0): return '名稱:《%s》 作者:%s 推薦語:%s\n狀態(tài):%s ' % (self.name, self.author, self.comment, status) book1 = Book('像自由一樣美麗','林達(dá)','你要用光明來定義黑暗,,用黑暗來定義光明') # 傳入?yún)?shù),,創(chuàng)建實例對象 # 直接打印對象即可,不能寫成print(book1.__str__())
這就是這個方法的好處,,你可以利用這個方法的返回值直接打印對象。 后面還會更新作業(yè)報錯的問題,,時間不夠23333我晚上再說
|