在一个方法中打印?

2024-04-19 20:10:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我们可以在类的方法中放置一个print吗?(第8页)
我知道最好还是回来。但是我必须把一个大的python文件变成一个类。。。你知道吗

class Test:
    def __init__(self,name):
        self.name = name
        self.r = str

    def tester(self):
        print('hello')
        print(self.name)

r = Test('pascal')
r.tester()

Tags: 文件方法nametestselfhelloinitdef
1条回答
网友
1楼 · 发布于 2024-04-19 20:10:14

直接回答你的问题,是的。可以在类中放置print语句。同样正确的是,最好使用return语句,以便更符合可移植性和可重用性。你知道吗

但是,我将在这里假设您实际要寻找的是一种返回类状态的字符串表示的方法。你知道吗

这就是函数__str__的作用。docs

在你的情况下你会

class Test():
    def __init__(self, name):
        self.name = name
        #self.r = str <-I don't know where "str" is coming from

    def __str__(self):
        return "Hello {0}".format(self.name)

现在可以实例化这个类了

r = Test("pascal")

然后打印出来

print(r)

得到

Hello pascal
>>>

相关问题 更多 >