gpt4 book ai didi

python - 导入 ConfigParser 读取文件时出现问题

转载 作者:太空宇宙 更新时间:2023-11-04 03:50:06 24 4
gpt4 key购买 nike

简介:
我有一个 .ini 文件 (A),它存储特定的凭据。有多个脚本 (B) - python、php 等 - 可以将此 .ini 文件 (A) 解析为变量,并且也与 .ini 文件 (A) 位于同一目录中。另一个目录(不是子目录)下的其他脚本(C),其中 .ini 文件(A)和解析脚本(B)不驻留在导入/包含这些解析脚本(B)以利用已解析的凭据变量。

但是,当尝试使用“sudo python <_(C)_>.py”运行 python 脚本 (C) 时,我收到此错误“ConfigParser.NoSectionError”。
运行 "sudo python"/interactive python,并在 .ini 文件 (A) 和 (B) 目录中导入 python 解析脚本 (B),我就能够访问已解析的凭据变量。

问题:
我究竟做错了什么?我认为这是一个权限问题。


文件夹树:
文件夹_0
->Sub_Folder_0
->(A)
->(B)
->Sub_Folder_1
->(C)

(A)

  [Host]
ip = 111.111.1.222
[Schema]
name = Derp_A_Der
[User]
name = root
password = SexysBack


(B)

   import ConfigParser as CP;
config = CP.ConfigParser();
config.read("B.ini");

m_p = config.get("User", "password");
m_h = config.get("Host", "ip");
m_n = config.get("Schema", "name");
m_u = config.get("User", "name");


(C)

   import sys;
import os;

mysql_config_path = "/Folder_0/Sub_Folder_0/";
sys.path.append( os.path.abspath(mysql_config_path) );
import mysqlConfig as myC;

print myC.m_u;

最佳答案

当找不到配置文件时,将使用空数据集,因此会出现异常NoSectionError在使用

运行脚本之前,您应该将目录更改为配置文件所在的位置
os.chdir(mysql_config_path) 

或使用目标脚本中的完整路径(在 config.read() 中)

关于python - 导入 ConfigParser 读取文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26617544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com