簡體   English   中英

如何在Python中使用configobj保留引號字符串

[英]How to keep the quotes string with configobj in Python

我有一個配置文件,它有一個項目:

[time_format]
iso = "ISO (2015-12-31 13:30:55)"

我用configobj讀取配置文件為:

config = ConfigObj(file_name);
section = config.keys();

經過一番閱讀后,我編寫了配置文件,但沒有將上述項目修改為:

config.write();

配置文件中的項目變為:

iso = ISO (2015-12-31 13:30:55)

引號消失了。 有什么辦法可以保留報價?

采用:

iso = '"ISO (2015-12-31 13:30:55)"'

我遇到了類似的問題,並通過子類化ConfigObj並覆蓋刪除和添加引號的方法來“修復”它-

from configobj import ConfigObj

class MyConfigObj(ConfigObj):

    def __init__(self, *args, **kwargs):
        ConfigObj.__init__(self, *args, **kwargs)

    def _unquote(self, value):
         return value

    def _quote(self, value, multiline=True):
        return value

然后,使用MyConfigObj代替ConfigObj,並讀入並寫回帶有引號的配置條目,而無需進行更改。

這適用於我使用過的簡單配置文件,但是我想在更復雜的配置文件(多行條目,帶有列表的條目等)上,還需要進一步完善!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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