python在linux上读取ini文件报错

问题

python开发的读取ini文件的程序,在windows上跑没有问题,但是部署到linux以后,报错:

configparser.NoSectionError:No Section:xxx

代码

    def __init__(self, config_file_path='./config.ini'):
        try:
            self.config_file_path = config_file_path
            self.conf = configparser.ConfigParser()
            self.conf.read(config_file_path,encoding="utf-8")
        except Exception as e:
            # 文件不存在或者读取失败
            print(str(e))

解决问题心路历程

1、怀疑是文件格式问题,于是,在linux上对应位置,新建一个.ini文件,将需要的内容复制进去,再次尝试,还是不行

2、省略中间坑了很久的时间。。。其次怀疑是文件路径的问题:config_file_path='./config.ini',这边写的是相对路径,但是经过之前很多次linux部署,发现linux需要写绝对路径,故改为/xx/xxx/config.ini,再次尝试,可以了

这个问题呢,网上也有很多帖子,虽然也写了些解决方案,但是可能不会跟我们自己遇到的问题完全吻合,主要就是总结思路,个人觉得主要是两点:

1、格式

2、路径

3、权限

你可能感兴趣的:(linux,运维,服务器)