【问题标题】:configparser: Not reading the file from the given pathconfigparser:不从给定路径读取文件
【发布时间】:2017-11-17 14:06:58
【问题描述】:

下面是我在eclipse中的python项目结构。我正在使用 configparser 读取 settings.config 文件中的一个部分。 configparser 不解析文件。它显示没有指定部分,但我正确地提到了该部分。我正在创建一个 dockerfile,当我运行 docker-compose 文件时,路径显示为

/usr/local/lib/python3.6/site-packages/MyProject-0.0.1-py3.6.egg/Publisher/settings.config

MyProject
 -Client
    -__init__.py
    -Main.py
 -Publisher
    -domain1
    -domain2
        -__init__.py
        -config.py
        -callconfig.py
    -__init__.py
    -settings.config

#config.py
import os.path as path
try:
    from configparser import ConfigParser
except ImportError:
    from ConfigParser import ConfigParser  # ver. < 3.0
        class Config(object):

        def get(self, mykey):
            config = ConfigParser()   
            configpath = path.join(path.split(path.dirname(path.abspath(__file__)))[0], "settings.config") 
            print (configpath)
            config.read(configpath)
            myvalue = config.get('mysection', mykey) 

【问题讨论】:

  • 修复你的身份,你正在执行 Config().get() 吗?
  • 缩进是固定的。是的,正在执行config.get('mysection', mykey)

标签: python python-3.x docker docker-compose configparser


【解决方案1】:

只需指定父文件夹路径或仅向上一级层次结构

  configpath = 'Publisher/settings.config'
    config.read(configpath)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-28
    • 1970-01-01
    • 2018-12-21
    • 1970-01-01
    • 2022-06-11
    相关资源
    最近更新 更多