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

avatar
作者
筋斗云
阅读量:0

文章目录

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”
在这里插入图片描述

这个脚本包含两个主要的函数:create_configread_configcreate_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
版权声明:本文为博主原创文章,转载请附上原文出处链接和本声明。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!