Python 是否可以使用类方法更新作为其属性之一的集合?(即,书写本身)

Python 是否可以使用类方法更新作为其属性之一的集合?(即,书写本身),python,python-3.x,set,data-persistence,Python,Python 3.x,Set,Data Persistence,好吧,我相信一个例子可以更好地理解: class FileFormats(): def __init__(self): self.a_set = {gif, jpg, png} def add_value(self, a_value): self.a_set.update(a_value) 我测试过了,它不起作用,我认为它不起作用没关系? 如果不使用“.txt”文件和打开、读取、写入方法或某种数据库,我想不出任何其他方法来做类似的事情。但

好吧,我相信一个例子可以更好地理解:

class FileFormats():

    def __init__(self):

        self.a_set = {gif, jpg, png}


    def add_value(self, a_value):
        self.a_set.update(a_value)
我测试过了,它不起作用,我认为它不起作用没关系? 如果不使用“.txt”文件和打开、读取、写入方法或某种数据库,我想不出任何其他方法来做类似的事情。但也许还有别的办法 我可以得到坚持,也许你们中的一些人可以启发我

我相信有一个非常简单的答案,我可能错过了python课程中的一些内容,所以,如果你告诉我谷歌这个或那个,我完全可以接受


谢谢。

除了在属性和方法之前预先设置self之外,请注意,不能使用值更新集合。只能使用iterable更新集合。该值必须在列表或元组中。示例中的最后一行应更改为self.a_set.update[a_value]。我的错误是,我忘了包含self。在这个例子中,它在什么意义上不起作用?f=文件格式;f、 add_value{'bmp','xcf'}很好…我想我表达得很糟糕,我的意思是,它很有效,但当你离开交互模式时,更新的值将消失…哦,我正在努力寻找答案,但似乎你想要的与你所问的无关。如果您想要对几个值进行持久化,最简单的方法是使用文件。