首页 > 编程语言 >PYTHON 模块 - configparser

PYTHON 模块 - configparser

时间:2022-12-18 13:23:52浏览次数:36  
标签:章节 读取 key PYTHON filename 模块 config configparser

1.1 configparser 模块

这个模块是用于解析配置文件

1.1.1 配置文件的格式

[section]
key = value
key = value
...

[section]
key = value
key = value
...

1.2 读取信息

# comment info
# ...

[db]
host = 127.0.0.1
port = 69
user = admin
password = admin

[info]
message =

1.2.1 读取文件

import configparser

filename = "config.ini"

# 实例化
config = configparser.ConfigParser()
# 读取
config.read(filename, encoding='utf-8')

1.2.2 读取章节

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
config.read(filename, encoding='utf-8')

# sections()返回章节标题组成的列表
sections = config.sections()
print(sections) # ['db', 'info']

1.2.3 读取特定的章节信息

值 = config.get("章节标题","属性名")

指定章节名称和其中的一个属性名称,返回值。

注意:返回的值已经去掉空白

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
config.read(filename, encoding='utf-8')

print(config.get("db", "host"))  # 127.0.0.1
print(config.get("info", "message"))

1.3 写入信息

可以写入信息,之后保存到配置文件中。

1.3.1 添加一个章节

先打开读取再写入,否则会覆盖文件

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件到内存
config.read(filename, encoding='utf-8')

# 再写入章节属性
config['debug'] = {
    'filename':'log.txt'
}

config.write(open(filename, mode='w'))

结果如下:

[db]
host = 127.0.0.1
port = 69
user = admin
password = admin

[info]
message = 

[debug]
filename = log.txt

1.3.2 在指定的章节里添加一个属性

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件
config.read(filename, encoding='utf-8')

config["debug"]["level"] = "ERROR"
config.write(open(filename, mode='w'))

结果会增加:

[debug]
filename = log.txt
level = ERROR

1.4 删除信息

可以删除属性及章节

1.4.1 删除属性

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件
config.read(filename, encoding='utf-8')

# 删除属性debug中的level
config.remove_option("debug","level")

config.write(open(filename, mode='w'))

1.4.2 删除章节

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件
config.read(filename, encoding='utf-8')

# 删除章节
config.remove_section("debug")

config.write(open(filename, mode='w'))

1.5 修改

config.set("章节","属性","新值")

如:

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件
config.read(filename, encoding='utf-8')

config.set("info","message","hello!")

config.write(open(filename, mode='w'))

1.6 遍历

1.6.1 遍历一个章节中的所有属性名

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件
config.read(filename, encoding='utf-8')
for key in config["db"]:
    print(key)
    

# 功能同上,都是遍历key的
for key in config.options("db"):
    print(key)

输出:

host
port
user
password

1.6.1 遍历一个章节中的所有键值

import configparser

filename = "config.ini"
config = configparser.ConfigParser()
# 先读取文件
config.read(filename, encoding='utf-8')
for key,value in config["db"].items():
    print(key,value)

标签:章节,读取,key,PYTHON,filename,模块,config,configparser
From: https://www.cnblogs.com/three-sheep/p/16990232.html

相关文章

  • 【python入门】第一章+第2章
    知识点#为注释注意缩进不需要分号进行断句#大数运算print(12345678910111213*987654321011)#乘法运算print("python从入门到入土\n"*3)#p2_1.py"""---......
  • IOS+Appium+Python自动化全实战教程
    背景由于公司的产品坐落于不同的平台,如ios、mac、Android、windows、web。因此每次有新需求的时候,开发结束后,留给测试的时间也不多。此外,一些新的功能实现,偶尔会影响其他......
  • Python学习笔记--函数来啦!
    函数函数,就是组织好的,可重复使用的,用来实现特定功能的代码块实际的小案例:不使用内置函数len,利用函数知识计算出字符串的长度实现:函数的基础定义语法案例:自动查核......
  • Python中的魔法方法
    python中的魔法方法是一些可以让你对类添加“魔法”的特殊方法,它们经常是两个下划线包围来命名的Python的魔法方法,也称为dunder(双下划线)方法。大多数的时候,我们将它们......
  • 自动提取土壤线-基于Python
    以前上遥感课写的记录,我把它搬到这里,错误也有参考的意义。背景和意义土壤在可见光波段(R)与近红外波段(NIR)的反射率具有线性关系,在R-NIR通道的二维坐标中,土壤光谱......
  • PYTHON 模块 - logging
    1.1loggin日志模块用print函数要想同时输出日志信息和时间、所在函数、所在线程等内容是比较困难的。,可以用loggin模块,它是内置的模块。1.2日志级别一共有五个极别,从......
  • Python 为什么如此设计?
    大概两年半前,我萌生了要创作一个新的系列文章的想法,也就是“Python为什么”,试图对Python的语法及特性提出“为什么”式的问题,以此加深对它的理解,探寻使用技巧、发展演变......
  • 短网址解析长网址python示例
    做可视化比较麻烦我就没做,用文件处理的,这里需要两个文件1、readUrl.txt文件保存需要解析的字符串2、newUrl.txt文件保存解析完成的字符串目录​​readUrl.txt文件示例​​​......
  • 走过岁月我才发现——云IDE真方便(Python3.8环境测试)
    目录​​产品测试:​​​​创建工作空间​​​​插件安装​​​​创建python文件​​​​运行python文件​​​​Demo测试​​​​查看环境piplist​​​​云IDE挑战赛​​......
  • 【python/pycharm】豆瓣top250电影
    学弟给的importreimportrequestsurl="https://movie.douban.com/top250"headers={'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/5......