测试代码:
import ConfigParser
config = ConfigParser.ConfigParser()
config.read('test_config.ini')
orig_str = """line1\r\nline2"""
config_str = config.get('General', 'orig_str')
print orig_str == config_str
,test_config.ini的内容为:
[General]
orig_str = line1\r\nline2
我想要的是config_str可以是与orig_str相同的值。
任何帮助将不胜感激!
答案 0 :(得分:2)
如果要编写多行配置值,只需在以下行的开头添加一个空格即可。例如:
[General]
orig_str = line1
line2
在我的操作系统(Linux)中返回'line1\nline2'
,但也许在不同的操作系统中也可能返回'\r'
。否则,您可以根据需要轻松将'\n'
替换为'\r\n'
。
我会说你用来编码邮件的任何库都应该负责替换。无论如何,如果不是这样,您可以按如下方式创建自己的ConfigParser
:
from ConfigParser import ConfigParser
class MyConfigParser(ConfigParser):
def get(self, section, option):
return ConfigParser.get(self, section, option).replace('\n', '\r\n')
config = MyConfigParser()
config.read('test_config.ini')
orig_str = """line1\r\nline2"""
config_str = config.get('General', 'orig_str')
print orig_str == config_str # Prints True