[英]In Python, what's the correct way to instantiate a class from a variable?
[英]What is the correct way to save variable data in python
我有一些用python编写的有用脚本,可以帮助我测试项目(某些复杂的价格计算系统)。 在开始计算任何产品的价格之前,我需要解析服务器以获取仅与所需产品相关的值。 解析需要大约5秒钟的时间。 鉴于我知道何时需要从服务器更新值,所以我每次启动为我计算价格的方法时都不需要等待这5秒钟。 在这种情况下,我需要将解析后的信息存储在变量内,并将其用于进一步的价格计算。 但有时我还需要使用服务器更新我的信息。 简化的代码示例:
class Some_scripts(object):
def __init__(self):
pass
def parser(self, endpoint, additional_requirements):
some_parsing_code
return required_info # example of returned data [{"name":"John"}, {"name":"Jack"}...]
def car_price_calc(self):
self.required_values = self.parser(endpoint, additional_requirements) # this one i need to store
futher_work_with
self.required_value
我想到的第一件事就是简单地将self.required_values
写入文件,并添加一些其他标志,这些标志指示有关从服务器更新self.required_values
方法或仅从文件中获取它的方法。 但这是解决我的问题的最正确,最可靠的方法吗?
取决于您的用例。 如果打算再次使用python进行读取,则酸洗是将python变量写入文件的最好方法。 https://docs.python.org/3/library/pickle.html
其他解决方案将是纯文本文件或某种结构化的文本格式,例如JSON或YAML。 这些对于人类阅读或使用其他语言的值更有用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.