标签:move 17.1 内容 ali root 配置文件 bind rem for循环
该模块适用于配置文件件的格式与windows ini文件类似,可以包含一个或多个节(section)每个节可以有多个参数(键=值). 首先, 我们先看一个xxx服务器的配置文件
[DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [server] User = hg Bind = 0.0.0.0 Port = 8888 [client] IP = 127.0.0.0 Port = 50022 ForwardX11 = no
我们用configparser就可以对这样的文件进行处理.首先, 是初始化
# 1. 初始化 import configparser config = configparser.ConfigParser() config["DEFAULT"] = { "sleep": 1000, "session-time-out": 30, "user-alive": 999999 } config["TEST-DB"] = { "db_ip": "192.168.17.189", "port": "3306", "u_name": "root", "u_pwd": "123456" } config[‘168-DB‘] = { "db_ip": "152.163.18.168", "port": "3306", "u_name": "root", "u_pwd": "123456" } f = open("config.ini",mode="w") config.write(f) # 写入文件 f.flush() f.close() # 读取文件信息: config = configparser.ConfigParser() config.read("config.ini") # 读取文件 print(config.sections()) # 获取到所有section(章节)。 [DEFAULT]是默认信息,每个章节都有[DEFAULT]中的信息 # 执行结果: [‘TEST-DB‘, ‘168-DB‘] # 从章节中获取到任意的数据,get 方法Section下的key对应的value print(config.get("TEST-DB","db_ip")) # 执行结果: 192.168.17.189 # 也可以像字典一样操作 print(config["TEST-DB"][‘db_ip‘]) print(config["168-DB"]["db_ip"]) # 执行结果: # 192.168.17.189 # 152.163.18.168 # 循环TEST-DB章节下的所有key for k in config["TEST-DB"]: print(k) # 所有key:value for k,v in config["TEST-DB"].items(): print(k,v) print(config.options("TEST-DB")) # 同for循环,找到 "TEST-DB"下所有键 # [‘db_ip‘, ‘port‘, ‘u_name‘, ‘u_pwd‘, ‘sleep‘, ‘session-time-out‘, ‘user-alive‘] print(config.items("TEST-DB")) # 找到 "TEST-DB"下所有键值对 # [(‘sleep‘, ‘1000‘), (‘session-time-out‘, ‘30‘), (‘user-alive‘, ‘999999‘), (‘db_ip‘, ‘192.168.17.189‘), (‘port‘, ‘3306‘), (‘u_name‘, ‘root‘), (‘u_pwd‘, ‘123456‘)]
增删改操作:
# 先读取. 然后修改. 最后写回文件 config = configparser.ConfigParser() config.read("config.ini") # 读取文件 # 添加一个章节 config.add_section("172-DB") config["172-DB"] = { "db_ip": "172.168.12.11", "port": "3306", "u_name": "root", "u_pwd": "123456" } # 修改信息 config.set("168-DB","db_ip","10.0.3.26") # 删除章节 config.remove_section("TEST-DB") # 删除元素信息 config.remove_option("168-DB","db_ip") # 写回文件 config.write(open("config.ini",mode="w"))
标签:move 17.1 内容 ali root 配置文件 bind rem for循环
原文地址:https://www.cnblogs.com/root0/p/10430805.html