[快学Python3]INI文件读写
时间:2022-05-07
本文章向大家介绍[快学Python3]INI文件读写,主要内容包括ConfigParser、实例、小结、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
概述
ini是我们常见到的配置文件格式之一。
ini是微软Windows操作系统中的文件扩展名(也常用在其他系统)。
ini“初始化(Initial)”的缩写。正如该术语所表示的,INI文件被用来对操作系统或特定程序初始化或进行参数设置。
其基本组成形式如下:
[section_1]
key1 = value1
key2 = value2
key3 = value3
key4 = value4
[section_2]
key1 = value1
key2 = value2
key3 = value3
key4 = value4
我们通过Python的ConfigParser模块来对ini文件进行读写操作。
ConfigParser
读取
- read(filename) 读取ini文件内容
- sections() 获取所有的section,并以列表的形式返回
- options(sections) 获取指定section的所有option
- get(section,option) 获取section中option的值,返回为string类型
写入
- set( section, option, value) 对section中的option进行更新
实例
我们先生成一个ini文件,并写入数据,然后在读取出来显示。
# -*- coding:utf-8 -*-
__author__ = '苦叶子'
# 导入模块
import configparser
if __name__ == "__main__":
# 先构建一个对象
config = configparser.ConfigParser()
# 来让我们写入几组数据
# 先新增一个section
config.add_section("开源优测")
# 在新增的section下加key-value键值对
config.set("开源优测", "微号", "DeepTest")
config.set("开源优测", "口号", "自我娱乐娱乐")
config.set("开源优测", "号外", "其实我开了好多号")
# 再新增一个section,但不加key-value键值对
config.add_section("我好孤单")
# 写入文件
with open('iniConfig.ini', 'w') as configfile:
config.write(configfile)
#####################################
# 下面开始我们来把刚才的ini文件读出来看看
config.read("iniConfig.ini")
# 获取它的所有section
sections = config.sections()
print(sections)
# 获取section下所有的options
for sec in sections:
options = config.options(sec)
print(options)
# 根据sections和options获取对应的value值
for sec in sections:
for option in config.options(sec):
print("[%s] %s=%s " % (sec, option, config.get(sec, option)))
小结
对INI文件应用场景,一般都是用于做初始化配置文件用,当然你要是愿意也可以用来做数据的存储。
留个小题目,请尝试自己用类封装一个通用的ini文件操作类。
- struts技术的logic标签
- 【翻译】使用Visual Studio创建Asp.Net Core MVC (一)
- 你不知道的Javascript:有趣的setTimeout
- ADO.NET 2.0 中的新增 DataSet 功能
- WinRar 4.20 – 文件扩展名欺骗(0Day)
- 黑掉ATM取款机?只需一条短信
- DNS迭代穷举脚本
- 走进计算机取证分析的神秘世界
- SYNPROXY:最廉价的抗DoS攻击方案
- 如何使用AndroidStudio将开源项目library发布到jcenter
- Android Studio 使用Gradle多渠道打包
- 某些浏览器中因cookie设置HttpOnly标志引起的安全问题
- 偷懒新姿势,打造属于RecyclerView的万能适配器Adapter和ViewHolder
- 科普哈希长度扩展攻击(Hash Length Extension Attacks)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法