Python Configparser和字符串,带%
愚蠢的问题(当然)答案很简单 我正在使用configparser从文件中读取一些字符串。当字符串包含“%”符号(例如$%”时,它会抱怨: ConfigParser.InterpolationSyntaxError:“%”后面必须跟“%”或“(”,找到:“%&” 有人熟悉这个吗Python Configparser和字符串,带%,python,Python,愚蠢的问题(当然)答案很简单 我正在使用configparser从文件中读取一些字符串。当字符串包含“%”符号(例如$%”时,它会抱怨: ConfigParser.InterpolationSyntaxError:“%”后面必须跟“%”或“(”,找到:“%&” 有人熟悉这个吗 谢谢!如果您不想替换环境变量,请使用RawConfigParser,而不是ConfigParser。编写两个%: V = ('%%', 'MHz', 'GHz') 结果: ('%', 'MHz', 'GHz') 在较新
谢谢!如果您不想替换环境变量,请使用RawConfigParser,而不是ConfigParser。编写两个
%
:
V = ('%%', 'MHz', 'GHz')
结果:
('%', 'MHz', 'GHz')
在较新的Python版本中,使用
configParser = configparser.ConfigParser(interpolation=None)
这将禁用插值
请注意,RawConfigParser
是一个旧式变体
考虑改用检查值类型的ConfigParser
内部存储。如果不需要插值,可以使用
ConfigParser(插值=无)
我认为您只需要
%%
来转义它。这是因为ConfigParser
在默认情况下执行插值,这意味着您可以将文件的其他部分引用为%(foo)
。请随意添加您喜欢的注释,这些注释处理的是python 2和3之间的行为变化,这显然是不需要的。当我想在Circud中使用时,它会有所帮助