windows下写了一个脚本,引用了configparser这个模块,读取配置文件cfg.ini。在windows下运行完全没问题,每想到一道linux环境下运行,就报错了。提示"configparser.NoSectionError: No section: 'xxx'"这个错误。
之前windows下也出过这个错误,是因为我用记事本等编辑了我的配置文件,导致内容编码有问题,后来重新用PyCharm编辑之后解决了,所以应该不是编码问题了。
后来查了下资料,才意识到是我脚本中引用配置文件的路径的问题。
windows中读取配置文件的代码:
cf = configparser.ConfigParser()
cf.read("config\\cfg.ini",encoding='utf-8')
问题原因分析:
linux环境下,文件路径用反斜杠“/”,格式与windows不一致
解决方法:
我把路径格式改了就解决问题啦,修改结果如下:
cf = configparser.ConfigParser()
cf.read("config/cfg.ini",encoding='utf-8')
注意:我看网上说,linux下最好不要用.ini文件,不过我目前用.ini发现没有问题。
启发我的博客链接放文末了,非常感谢,又解决一个问题,顺便把代码其中其他的写了路径的地方的斜杠也换了。
https://blog.csdn.net/qq_31489933/article/details/88327055