繁体   English   中英

Python ConfigParser-引发KeyError(键)

[英]Python ConfigParser - raise KeyError (key)

config.ini

[datasource]
host = localhost

config.py

import configparser
import os

config = configparser.ConfigParser()
config.read(os.path.join(os.getcwd(), 'config.ini'))
host = config['datasource']['host']

测试文件

import config
print(config.host)

追溯(最近一次通话):

在第6行的文件“ Test \\ test.py”中

导入配置

文件“ C:\\ Users \\ jack \\ PycharmProjects \\ Test \\ config.py”,第6行,在

host = config ['datasource'] ['host']

getitem中的文件“ C:\\ Users \\ jack \\ AppData \\ Local \\ Programs \\ Python \\ Python37-32 \\ lib \\ configparser.py”,第958行

引发KeyError(key)

KeyError:“数据源”

所有文件都放在同一文件夹中。

当我从pycharm运行Test.py脚本时,它没有问题。

但是当我从终端打电话时,错误来了。

如何解决这个问题呢?

如果配置文件位于同一目录中

只需获取config.py文件的位置,删除config.py文件的名称并加入config.ini文件即可

path = '/'.join((os.path.abspath(__file__).replace('\\', '/')).split('/')[:-1])
config.read(os.path.join(path, 'config.ini'))

这样一来,即使您移动整个目录,也无需继续更改文件路径

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM