Python 如何在对象的内存中保持全局状态?

Python 如何在对象的内存中保持全局状态?,python,design-patterns,Python,Design Patterns,我正在尝试构建一个应用程序,它将接收大量可能以任何顺序重复的消息,如何实例化一个类或将数据保存在内存中以避免多次处理相同的信息?例如: 信息: {"product": {"name": "iphone", "active": True}} {"price": {"amount": 100}} {"product": {"name": &q

我正在尝试构建一个应用程序,它将接收大量可能以任何顺序重复的消息,如何实例化一个类或将数据保存在内存中以避免多次处理相同的信息?例如:

信息:

{"product": {"name": "iphone", "active": True}}
{"price": {"amount": 100}}
{"product": {"name": "iphone", "active": True}}
在处理消息时,我需要生成一个错误,表明“产品已激活”,我尝试使用
单例模式,但我认为它不起作用,因为我在循环中读取消息,我不知道如何存储“产品”信息位于全局状态的某个位置,并检查该状态是否为
None
active=True

循环:

for message in messages:
    product = Product(message)  # serialize the dict into a class, this is the first message

    # On the second loop I should get an "string" saying that the product was already activated.

我如何在全局状态下存储信息?

产品的目录键入一些唯一的ID(
name
,可能在您的模式中)?`@AKX您能给我举个例子吗?@rafacioly,看起来您需要内存缓存。此外,如果您正在用这些信息构建一些东西,那么请记住这些信息在一段时间后过期,否则如果您有一个合适的产品规模和合适的产品目录,您可能会面临内存问题。