簡體   English   中英

在python中保存變量數據的正確方法是什么

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM