Python脚本可在IDE中成功运行,但是在尝试通过命令行运行时出现ConfigParser错误。
错误:
引发NoOptionError(选项,部分)ConfigParser.NoOptionError:在“数据库”部分中没有选项“密码”
代码:
from ConfigParser import SafeConfigParser
parser = SafeConfigParser()
parser.read('settings.ini')
# sets database and API configuration from settings.ini
API_KEY = parser.get('tokens','api_key')
db_user = parser.get('database','user')
db_pwd = parser.get('database','password')
db_host = parser.get('database','host')
db_database = parser.get('database','database')
路径和环境似乎很好,所以问题似乎出在ConfigParser上。有什么想法可能有问题吗?要再次重申,该脚本可以在IDE内正常运行(使用Spyder,PyCharm等时)。正如预期的那样,环境指向水蟒。
非常感谢您的帮助。
罗伯(在评论中)使我走上了正确的轨道。问题在于Python的工作目录与脚本所预期的不同。为了使脚本正常工作,我添加了:
import sys
import os
os.chdir(os.path.dirname(sys.argv[0]))
...而且有效。谢谢大家的帮助-非常感谢。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句