如何在同一类中更改变量的值?

时间:2018-01-23 17:43:56

标签: python class oop variables

我是python中的新手,我有这段代码:

class Daemon():        
    db = Database()

    def __init__(self):        
        final_folder = ''

如何在同一个类中更改变量final_folder的值但在其他函数中?

我尝试下面的代码但不起作用:

class Daemon():    
    db = Database()

    def __init__(self):
        final_folder = ''

    def get_mail_body(self, msg):
        Daemon.final_folder = 'someotherstring'

2 个答案:

答案 0 :(得分:1)

您需要在self.final_folder中将其称为__init__,例如:

class Daemon():

    db = Database()

    def __init__(self):

        self.final_folder = ''

    def get_mail_body(self, msg):

        self.final_folder = 'someotherstring'

然后你应该可以做类似的事情:

my_daemon = Daemon()
print(my_daemon.final_folder)
# outputs: ''
my_daemon.get_mail_body('fake message')
print(my_daemon.final_folder)
# outputs: 'someotherstring'

答案 1 :(得分:0)

如果您在课堂内使用,则需要使用self访问变量。 self持有当前对象。

这是更新的代码。

def __init__(self):
   self.final_folder = ''
def get_mail_body(self)
    self.final_folder = 'Hello'

创建类的对象并访问变量。