configparse模块常用于生成和修改常见的配置文档

生成配置模块:用字典写

import configparser

config = configparser.ConfigParser()
config["DEFAULT"] = {'ServerAliveInterval': '45',
'Compression': 'yes',
'CompressionLevel': '9'} config['USER'] = {}
config['USER']['User'] = 'hhh'
config['SSH'] = {}
topsecret = config['SSH']
topsecret['Host Port'] = '50022' # mutates the parser
topsecret['ForwardX11'] = 'no' # same here
config['DEFAULT']['ForwardX11'] = 'yes'
with open('example.ini', 'w') as configfile:
config.write(configfile)

读取配置:config.sections()

import configparser
config = configparser.ConfigParser()
config.read('example.ini')
print(config.sections()) # ['USER', 'SSH'], 默认不dayin[DEFAULT]模块
print(config['USER']) # <Section: USER>
print(config['USER']['user']) # hg
print(config.defaults()) # 打印默认模块, 打印出来一个有序的字典
print(config.has_section('USER')) # True
OrderedDict
print(config['DEFAULT']['compressionlevel']) # 9 # 打印默认模块, 打印出来一个有序的字典OrderedDict
# 跟字典一样,只打印key的信息
for key in config['DEFAULT']:
# print(key, v) 报错, too many values to unpack (expected 2)
print(key)

删除整个模块: remove,文件不能修改,只能覆盖,可以重新写入新的文件

import configparser
config = configparser.ConfigParser()
config.read('example.ini') # 文件不能修改,只能覆盖,可以重新写入新的文件
config.remove_section('SSH')
with open('example.ini', 'w', encoding='utf-8') as f:
config.write(f)
print(config.sections())

删除模块下的某个元素

import configparser
config = configparser.ConfigParser()
config.read('example.ini') print(config.has_option('USER', 'user'))
config.remove_option('USER', 'user')
print(config.has_option('USER', 'user')) with open('example.ini', 'w', encoding='utf-8') as f:
config.write(f)

修改配置:

import configparser
config = configparser.ConfigParser()
config.read('example.ini') print(config['USER']['user'])
config.set('USER', 'user', 'ftl')
print(config['USER']['user']) with open('example.ini', 'w', encoding='utf-8') as f:
config.write(f)

Python学习---重点模块之configparse的更多相关文章

  1. Python学习---重点模块的学习【all】

    time     [时间模块] import time # print(help(time)) # time模块的帮助 print(time.time()) # 时间戳 print(time.cloc ...

  2. Python学习---重点模块之re

    正则表达式是用来操作字符串,但是字符串提供的正则是完全匹配,有时候我们需要进行模糊匹配,这个时候就需要正则表达式了.通过re模块来实现,由C语言来执行底层的匹配 字符匹配(普通字符,元字符): 1 普 ...

  3. Python学习---重点模块之subprocess

    subprocess是用来执行系统程序,查看系统的模块, 查看当前目录 第一种方法: import subprocess # subprocess会单独自己开辟一个线程,内部是多线程 # stdout ...

  4. Python学习---重点模块之logging

    日志级别 日志级别  critical > error > warning > info > debug, 默认是从warning开始打印 import logging # 日 ...

  5. Python学习---重点模块之json

    注意:JSON不能转换类,不能转换函数 重点方法示例 json.dumps():实现文件写入,字符串转换[写入文件当然是JSON字符串楼] 实际上,json.dumps()只是帮我们做了一个字符串的转 ...

  6. Python学习---重点模块之pickle

    仅仅支持Python里面的函数等相关功能的实现,而且pickle写入的内容是看不出来的,读取的时候要求有原内容 pickled的写入: import pickle def fun(): print(' ...

  7. Python学习---重点模块之shelve

    简单示例 import shelve f = shelve.open(r'shelve.txt') f['info'] = {'name':'ftl', 'age':23, 'sex': 'male' ...

  8. Python学习---重点模块之xml

    xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单 数据准备 <?xml version="1.0"?> <data&g ...

  9. Python学习--Selenium模块

    1. Python学习--Selenium模块介绍(1) 2.Python学习--Selenium模块学习(2) 其他: 1. Python学习--打码平台

随机推荐

  1. MySQL约束和修改数据表知识集结

    一.约束 划分标准:功能.数据列的数目 功能: (1)NOT NULL(非空约束) (2)PRIMARY KEY(主键约束) (3)UNIQUE(唯一约束) (4)DEFAULT(默认约束) (5)F ...

  2. 2.1 js 基础--select深入

    select     获取select下的所有option     用op=select.options         option属性:op[1].value,op[1].text;     // ...

  3. <数据挖掘导论>读书笔记5关联分析的基本概念和算法

    关联规则的强度可以用support度和confidence(置信)度来度量 关联规则发现  给定事务的集合T,关联规则发现是指找出支持度大于等于minsup并且置信度大于等于minconf的所有规则, ...

  4. jenkins配置ssh

    1.不使用密钥,不配置 2.使用用户名密码配置 3.构建完成后,将文件发送到指定服务器 要拷贝的文件是/var/lib/jenkins/web1/src/*.js

  5. [APIO2018] Circle selection 选圆圈

    Description 给出 \(n\) 个圆 \((x_i,y_i,r_i)\) 每次重复以下步骤: 找出半径最大的圆,并删除与这个圆相交的圆 求出每一个圆是被哪个圆删除的 Solution \(k ...

  6. web.xml配置文件中async-supported报错解决

    项目中配置spring时async-supported报错: 是因为<async-supported>true</async-supported>是web.xml 3.0的新特 ...

  7. Mybatis插入、查询自定义的数据类型的方式

    1.首先创建JavaBean对象 package com.zuo.Mybatis.bean; public class PhoneNumber { private String countryCode ...

  8. maven父子项目

    maven搭建父子项目 1.先建立一个父项目,建立项目的时候,选择  Create a simple project 点击 next,填写以下信息 点击finish就可以了. 2.接下来要建立一个子项 ...

  9. thinkphp引入头文件

    <include File="Public:regheader" />

  10. html 之 position用法

    引用: position的四个属性值: 1.relative2.absolute3.fixed4.static下面分别讲述这四个属性. <div id="parent"> ...