【问题标题】:change the content of py file [closed]更改py文件的内容[关闭]
【发布时间】:2017-07-19 15:37:20
【问题描述】:

我有一个 python 文件,其中包含一个字典和一个使用字典导入文件的文件。 我需要更改键的实际值,我的意思是永久更改-而不是通过导入和编辑代码, 我怎样才能做到这一点?

【问题讨论】:

  • 通过更改包含字典的文件中的值?
  • 如果数据需要可编辑,则应以数据友好的格式存储;也许是 JSON、YAML、Python 泡菜。然后加载文件,编辑数据,再次序列化成文件。
  • 源代码不是数据,你应该把两者分开。

标签: python dictionary


【解决方案1】:

程序员多年来学会了不要在程序控制下修改其程序的源代码,这是有充分理由的。这会导致混乱,尤其是当多人尝试同时使用同一个程序时,这意味着您无法有效地将代码置于源代码控制之下。

使用某种方式在程序外部存储键和值会更好。取决于键的类型,可能是搁置、关系数据库或许多其他东西。如果不同,则不应将数据内置到程序的源中。

【讨论】:

    【解决方案2】:

    使用pickle

    import pickle
    
    myDict = {"foo": "bar", "spam": "eggs"}
    pickle.dump(myDict, "myFile.py") # Stores object in a file
    
    dictFromFile = pickle.load("myFile.py") # Retrieves object from files
    print dictFromFile["spam"] # Prints eggs
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-14
      • 2021-05-24
      • 1970-01-01
      • 1970-01-01
      • 2013-08-10
      • 2013-02-12
      • 2012-01-02
      • 2016-04-27
      相关资源
      最近更新 更多