读取 Python 中的 .ini 文件

Reading .ini files in Python

我是 .ini 文件的新手 我试图用 python 读取 .ini 配置文件,但我被卡住了! 我试过这个方法,但它对我来说并不奏效:

class iniConfig:

def __init__(self):
    self.iniConfig = ConfigParser(allow_no_value=True)
    try:
        f = open('C://Desktop//PythonScripts//Config.ini', 'r')
        self.iniConfig.read(f)
        print("Sections: ", self.iniConfig.sections())

    except OSError:
        print('File cannot be opened!')

输出:

     Sections: []

我还是不明白我做错了什么:(

提前谢谢你,

3301

您应该在这些行中指定 .ini 文件的实际路径而不是 'The_Path_to_ini'

    f = open('The_Path_to_ini', 'r')
    print(self.iniConfig.read('The_Path_to_ini'))

处理 open 调用中可能发生的异常也是一个好主意。根据 open() 文档:

If the file cannot be opened, an OSError is raised.

您可以使用 try ... except 块以这种方式处理此异常:

try:
   f = open('file', 'r')
   ...
except OSError as e:
   print('File cannot be opened: ', e)

如果不需要处理异常,通常使用 with 语句而不是 try ... except 块。例如:

with open('file', 'r') as f:
   # work with f

阅读 Python documentation 中有关 with 语句的更多信息。

您正在使用 open 打开一个文件,并使用接受路径的 .read,所以试试这个:

   def __init__(self):
      self.iniConfig = ConfigParser(allow_no_value=True)
      try:
          self.iniConfig.read('C://Desktop//PythonScripts//Config.ini')
          print("Sections: ", self.iniConfig.sections())

      except OSError:
          print('File cannot be opened!')