You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python打印Book类对象详情时输出bound method而非预期内容问题

问题原因

你遇到的输出是方法对象本身而非方法执行结果,核心问题是调用类实例方法时未添加后缀括号()。
在Python语法规则中,直接写方法名不带括号,是引用方法对象本身,不会触发方法内部逻辑执行,因此你打印的是方法对象的默认描述信息,而非方法返回的书籍详情字符串。

修正方案

仅需修改代码最后一行的打印语句,给getBookDetails加上括号即可,修改后代码如下:

class Book():
    def __init__(self, title = "", author = "", year = None):
        self.title = title
        self.author = author
        self.year = year
    def getTitle(self):
        return self.title
    def getAuthor(self):
        return self.author
    def getYear(self):
        return self.year
    def getBookDetails(self):
        string = ("Title: {}, Author: {}, Year: {}"\
        .format(self.title, self.author, self.year))
        return string
b = Book("Ready Player One", "Cline, Ernest", 2011)
print(b.getBookDetails())

修改后运行即可得到预期输出:
Title: Ready Player One, Author: Cline, Ernest, Year: 2011

内容的提问来源于stack exchange,提问作者nwillows

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 06:36:04