Python 用configparser读写ini文件
一、configparser 简介
Python用于读写ini文件的一个官方标准库。具体详见官网链接
二、configparser 部分方法介绍
|
方法 |
描述 |
|
read(filenames) |
filesnames是一个列表,需要从文件加载初始值的应用程序应该在调用read()之前使用readfp()加载所需的文件或文件。 |
|
readfp(fp,[filename]) |
在fp中,从文件或文件类对象中读取和解析配置数据(只使用readline()方法)。如果文件名被省略,并且fp有一个name属性,它被用于文件名;默认值为< ? >。 |
|
write(fileobject) |
将配置的表示写入指定的文件对象。这个表示可以由未来的read()调用解析。 |
|
add_section(section) |
向实例添加一个section |
|
remove_option(section,option) |
从指定的部分中删除指定的选项。如果该部分不存在,请提出NoSectionError。如果存在的选项被删除,返回True;否则返回False。 |
|
remove_section(section) |
从配置中删除指定的section。如果这个部分确实存在,返回True。否则返回假 |
|
set(section, option, value) |
如果给定的部分存在,将给定的选项设置为指定的值 |
|
optionxform(option) |
也可以在一个实例上重新设置它,对于一个需要字符串参数的函数。例如,将其设置为str,将使选项名称区分大小写 |
|
defaults() |
返回包含实例范围默认值的字典。 |
|
sections() |
返回可用的section的列表;默认section不包括在列表中 |
|
has_section(section) |
指示指定的section是否出现在配置中。默认的section未被确认 |
|
options(section) |
返回指定section中可用的选项列表。 |
|
has_option(section, option) |
如果给定的section存在,并且包含给定的选项,则返回True;否则返回False |
|
get(section, option) |
为指定的section获取一个选项值。 |
|
getint(section, option) |
它将指定section中的选项强制转换为整数 |
|
getfloat(section, option) |
它将指定section中的选项强制转换为浮点型 |
|
getboolean(section, option) |
强制转换为布尔型,”1”, “yes”, “true”, and “on”, 转换为True,”0”, “no”, “false”, and “off”, 转换为Falseo 其他返回ValueError. |
|
items(section) |
返回给定section中每个选项的(name,value)对的列表。 |
|
get(section,option,[raw,[vars]]) |
为指定的section获取一个选项值。如果提供了vars,它必须是一个字典。该选项在vars(如果提供)、分段和默认值中查找, |
|
items(section, [raw, [vars]]) |
返回给定section中每个选项的(名称、值)对的列表 |
三、读写ini文件实例
- 建立ini文件
a.在路径下新建一个TXT文档

b. 更改新建的txt文档后缀,将其txt改为ini

c. 在ini文档里写入如下内容
[login]
username = 123
password = 456

2. 编写程序

import configparser#调用读写类库
config = configparser.ConfigParser()#定义变量类型
path = r'G:\Python Project\testconfig.ini'#定义ini文件路径
#第一种读取ini文件方式,通过read方法
config.read(path)
userName = config['login']['username']
print('第一种方法读取到的值:',userName)
# 第二种读取ini文件方式,通过get方法
userName_Password = config.get('login','password')
print('第二种方法读取到的值:',userName_Password)
# 第三种读取ini文件方式,读取到一个section中的所有数据,返回一个列表
value = config.items('login')
print('第三种方法读取到的值:',value)
Write_ini ="y"
Write_ini= input("输入是否写入ini文件,y/n")
if Write_ini=="y":
Revise_userName = input("是否修改用户名称?y/n")
if Revise_userName=="y":
config.set('login', 'username', input("输入需要修改的名称:")) # 写入数据
Revise_password = input("是否修改用户密码?y/n")
if Revise_password=="y":
config.set('login','password',input("输入需要修改的密码:")) # 写入数据
if Revise_userName =="y" or Revise_password=="y":
config.write(open(path,'w'))
#保存数据 config.write(open(path,A)) A有4个类型参数
# 'r' open for reading (default) 默认属性,打开并读取ini文件
# 'w' open for writing, truncating the file first 打开并写入ini文件,首先截断文件
# 'x' create a new file and open it for writing 创建一个新文件,并向新文件写入
# 'a' open for writing, appending to the end of the file if it exists 打开并写入,如果存在则附加到文件的末尾
# 'b' binary mode 以2进制模式写入ini文件
# 't' text mode (default) 默认属性 以文本模式写入ini文件
# '+' open a disk file for updating (reading and writing) 打开磁盘文件进行更新(读写)
# 'U' universal newline mode (deprecated) 通用换行模式(已弃用)
else:
print("不写入参数")
运行效果图

Python 用configparser读写ini文件的更多相关文章
- 【python-ini】python读写ini文件
[python-ini]python读写ini文件 本文实例讲述了Python读写ini文件的方法.分享给大家供大家参考.具体如下: 比如有一个文件update.ini,里面有这些内容: 1 2 ...
- c# 利用动态库DllImport("kernel32")读写ini文件(提供Dmo下载)
c# 利用动态库DllImport("kernel32")读写ini文件 自从读了设计模式,真的会改变一个程序员的习惯.我觉得嘛,经验也可以从一个人的习惯看得出来,看他的代码编写习 ...
- VB读写INI文件的四个函数以及相关API详细说明
WritePrivateProfileString函数说明 来源:http://blog.csdn.net/wjb9921/article/details/2005000 在我们写的程序当中,总有一 ...
- C# 读写INI 文件
INI 格式: [Section1] KeyWord1 = Value1 KeyWord2 = Value2 ... [Section2] KeyWord3 = Value3 KeyWord4 = V ...
- WIN32读写INI文件方法
在程序中经常要用到设置或者其他少量数据的存盘,以便程序在下一次执行的时候可以使用,比如说保存本次程序执行时窗口的位置.大小.一些用户设置的 数据等等,在 Dos 下编程的时候,我们一般自己产生一个 ...
- Python3 将configparser从ini文件中读取的内容转换成字典格式
因为写脚本的用到了,所以研究了下怎么将configparser从ini文件中读取的内容转换成字典格式. 整理一下,希望能对大家有帮助. 从http://stackoverflow.com/questi ...
- 读写ini文件
C# 使用文件流来读写ini文件 背景 之前采用ini文件作为程序的配置文件,觉得这种结构简单明了,配置起来也挺方便.然后操作方式是通过WindowsAPI,然后再网上找到一个基于WindowsAPI ...
- 在 WinCe 平台读写 ini 文件
在上篇文章开发 windows mobile 上的今日插件时,我发现 wince 平台上不支持例如 GetPrivateProfileString 等相关 API 函数.在网络上我并没有找到令我满意的 ...
- Python使用openpyxl读写excel文件
Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...
随机推荐
- Java并发编程之Lock(同步锁、死锁)
这篇文章是接着我上一篇文章来的. 上一篇文章 同步锁 为什么需要同步锁? 首先,我们来看看这张图. 这是一个程序,多个对象进行抢票. package MovieDemo; public class T ...
- 最佳实践 | 通过使用 Jira Service Management 改进 HR 工作流程
Jira Service Management 承诺解锁高速团队.技术团队和与之合作的业务部门都可以从 Jira Service Management中受益,尤其是 HR 团队. Atlassi ...
- 解决vue安装less报错Failed to compile with 1 errors的问题
1.创建vue项目后安装less,执行 npm install less less-loader --save-dev 下载版本为:less-loader@6.1.0 , less@3.11.3,重启 ...
- IIS发布Https和Https的问题
asp.net调试页面的时候遇到一个问题,我喜欢右键点击在浏览器查看页面,打开的页面默认是https的,其实iis会同时生成http和https两种页面,但是我懒得每次去点.问题是页面中测试接口是ht ...
- CTF中常见密码学
前言 参考,我们任课老师的WORD和PPT,结合自己的理解,在结合网上文章的理解. 一.BASE64编码 BASE64编码中,特征和所拥有的字符字母:A-Z a-z;数字:0-9;符号:+ / ,然后 ...
- 翻译:使用 CoreWCF 升级 WCF 服务到 .NET 6
翻译:使用 CoreWCF 升级 WCF 服务到 .NET 6 原文地址:https://devblogs.microsoft.com/dotnet/upgrading-a-wcf-service-t ...
- Spring 源码(14)Spring Bean 的创建过程(5)
到目前为止,我们知道Spring创建Bean对象有5中方法,分别是: 使用FactoryBean的getObject方法创建 使用BeanPostProcessor的子接口InstantiationA ...
- 1903021121—刘明伟—Java第四周作业—java分支语句学习
项目 内容 课程班级博客链接 19信计班(本) 作业要求链接 第四周作业 要求 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果). 扩展阅 ...
- html5 tts(文字朗读)
在 chrome 下使用比较好的中文语音包. 注意 speechSynthesis.getVoices() 有时候可能会返回空数组,需要做验证 var zhCnLangs = speechSynthe ...
- 好客租房2-React概述
1.1什么是react React是一个用于构建用户界面的javascript库 用户界面:HTML页面 React主要用来HTML 或者沟通构建web应用 如果从MVC的角度来看 react仅仅是从 ...