【Python基础】一文搞懂:Python 中 ini 配置文件的写入与读取
创始人
2024-11-05 19:38:10
0

文章目录

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

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

相关内容

热门资讯

微信怎样开金房间卡/微信链接斗... 斗牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享受...
科技实测!牛牛房卡游戏代理星云... 微信游戏中心:星云大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
推荐一款!金花房卡是正规的高朋... 推荐一款!金花房卡是正规的高朋联盟/房卡正版如何购买Sa9Ix苹果iPhone 17手机即将进入量产...
正规平台有哪些,金花充值房卡趣... 您好!微信趣游联盟大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(趣游联盟)大厅介绍:...
秒懂教程!微信的炸金花房卡怎么... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:66336574许多玩家在游戏中会购买房卡来享...
玩家攻略,牛牛房卡游戏代理兄弟... 兄弟大厅/新道游房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
微信链接炸金花房卡在哪买的/微... 炸金花是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:8488009许多玩家在游戏中会购买房卡来享受...
重大通报,牛牛充值房卡超凡联盟... 重大通报,牛牛充值房卡超凡联盟/微信链接房卡卖家联系方式超凡联盟是一款非常受欢迎的游戏,咨询房/卡添...
秒懂教程!微信拼三张怎么买房卡... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:56001354许多玩家在游戏中会购买房卡来享...
微信买链接拼三张房卡/毛豆大厅... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:33903369许多玩家在游戏中会购买房卡来享...
正版授权!金花房卡怎么购买青龙... 青龙大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
一分钟了解!金花房卡出售新蜜瓜... 一分钟了解!金花房卡出售新蜜瓜大厅/上游房卡多少钱一张Sa9Ix苹果iPhone 17手机即将进入量...
玩家攻略,牛牛房卡批发平台芙蓉... 今 日消息,芙蓉大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
秒懂教程!微信牛牛房间怎么弄,... 斗牛是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:71319951许多玩家在游戏中会购买房卡来享受...
科技实测!金花房卡官网荣耀联盟... 荣耀联盟房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
微信拼三张在哪里充值房卡/新星... 拼三张是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:55051770许多玩家在游戏中会购买房卡来享...
正版授权!微信金花房卡怎么弄悟... 正版授权!微信金花房卡怎么弄悟空系列/随意玩/房卡在哪里购买悟空系列/随意玩是一款非常受欢迎的游戏,...
玩家攻略,牛牛房卡批发平台昆仑... 微信游戏中心:昆仑大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
一分钟了解!游戏微信牛牛房卡新... 新大圣/大圣大厅是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:33...
ia攻略/金花房卡怎么购买白虎... 今 日消息,白虎大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...