【Python基础】一文搞懂:Python 中 ini 配置文件的写入与读取

07-16 812阅读

文章目录

    • 1 引言
    • 2 INI 文件简介
    • 3 Python 中的 configparser 模块
    • 4 写入 INI 文件
      • 4.1 基本用法
      • 4.2 高级用法
      • 5 读取 INI 文件
      • 6 实例演示
        • 6.1 封装为config_example.py脚本文件
        • 7 注意事项
        • 8 总结

          1 引言

          INI 文件是一种简单的文本文件,用于存储配置信息。它们易于阅读和编辑,广泛应用于多种程序和应用中。Python 通过内置的 configparser 模块提供了对 INI 文件的读写支持。本文将详细介绍如何在 Python 中使用 configparser 来处理 INI 文件。

          2 INI 文件简介

          INI 文件通常由一个或多个节(section)组成,每个节可以包含多个键值对。节由方括号包围的标题表示,例如 [SectionName]。

          3 Python 中的 configparser 模块

          configparser 是 Python 的标准库之一,用于解析和操作 INI 文件。它提供了丰富的方法来读取、写入、更新和删除 INI 文件中的配置项。

          configparser 是 Python 的标准库,无需单独安装。可以直接导入并使用。

          4 写入 INI 文件

          4.1 基本用法

          from configparser import ConfigParser
          # 创建配置解析器
          config = ConfigParser()
          # 添加节
          config.add_section('Settings')
          # 设置键值对
          config.set('Settings', 'font', 'Arial')
          config.set('Settings', 'fontsize', '12')
          # 写入文件
          with open('config.ini', 'w') as configfile:
              config.write(configfile)
          

          4.2 高级用法

          # 添加多个节
          config.add_section('User')
          config.set('User', 'name', 'Alice')
          config.set('User', 'age', '30')
          # 再次写入
          with open('config.ini', 'w') as configfile:
              config.write(configfile)
          

          5 读取 INI 文件

          # 读取配置文件
          config.read('config.ini')
          # 获取配置值
          font = config.get('Settings', 'font')
          fontsize = config.getint('Settings', 'fontsize')
          print(f'Font: {font}, Font Size: {fontsize}')
          # 检查节是否存在
          if config.has_section('User'):
              name = config.get('User', 'name')
              age = config.get('User', 'age')
              print(f'User Name: {name}, Age: {age}')
          

          6 实例演示

          当然可以。下面是一个使用 Python 的 configparser 模块来读取和写入 INI 配置文件的完整示例。这个例子将包含创建配置文件、写入多个节和键值对,以及读取这些配置的功能。我们将这些操作封装在一个名为 config_example.py 的 Python 文件中。

          6.1 封装为config_example.py脚本文件

          from configparser import ConfigParser
          def create_config(filename):
              config = ConfigParser()
              config.add_section('Settings')
              config.set('Settings', 'font', 'Arial')
              config.set('Settings', 'fontsize', '12')
              config.set('Settings', 'compression', '9.5')  # 浮点数示例
              config.set('Settings', 'fullscreen', 'yes')  # 布尔值示例
              config.add_section('User')
              config.set('User', 'name', 'Alice')
              config.set('User', 'age', '30')
              with open(filename, 'w') as configfile:
                  config.write(configfile)
          def read_config(filename):
              config = ConfigParser()
              config.read(filename)
              if config.has_section('Settings'):
                  font = config.get('Settings', 'font')
                  fontsize = config.getint('Settings', 'fontsize')  # 使用 getint
                  compression = config.getfloat('Settings', 'compression')  # 使用 getfloat
                  fullscreen = config.getboolean('Settings', 'fullscreen')  # 使用 getboolean
                  print(f"[Settings]\nFont: {font}\nFontSize: {fontsize}\n"
                        f"Compression: {compression}\nFullScreen: {fullscreen}\n")
              if config.has_section('User'):
                  name = config.get('User', 'name')
                  age = config.getint('User', 'age')  # 使用 getint
                  print(f"[User]\nName: {name}\nAge: {age}")
          def main():
              config_file = 'config.ini'
              create_config(config_file)
              read_config(config_file)
          if __name__ == "__main__":
              main()
          

          运行以上代码后控制台输出结果:

          [Settings]

          Font: Arial

          FontSize: 12

          Compression: 9.5

          FullScreen: True

          [User]

          Name: Alice

          Age: 30

          同时生成如下ini文件:“config.ini”

          【Python基础】一文搞懂:Python 中 ini 配置文件的写入与读取

          这个脚本包含两个主要的函数:create_config 和 read_config。create_config 函数用于创建一个新的 INI 配置文件并添加设置和用户信息。read_config 函数则用于读取这个配置文件并打印其内容。main 函数组织了这些操作的流程。运行此脚本将创建一个名为 config.ini 的配置文件,并在其中写入数据,然后读取并打印这些数据。

          7 注意事项

          • 使用 configparser 时,请注意键和节的大小写。默认情况下,configparser 将所有键和节名转换为小写。
          • 使用 getint()、getfloat() 和 getboolean() 方法可以获取非字符串类型的值。

            8 总结

            configparser 模块提供了一种简单而有效的方法来处理 INI 配置文件。通过这个模块,您可以轻松地在 Python 中创建、读取、修改和写入 INI 文件,从而管理各种配置数据。


            希望这篇文章能帮助您理解和掌握 Python 中处理 INI 文件的方法。如果您有任何疑问或建议,请在评论区留言,让我们共同进步!

            作者:climber1121

            链接:https://blog.csdn.net/climber1121

            来源:CSDN

            版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]