Python3 读写配置文件

介绍

在编写 Python 程序时,经常会需要从配置文件中读取配置信息,或者将程序中的配置保存到配置文件中。Python 提供了多种方法来读写配置文件,本文将介绍其中两种常用的方法。

第一种方法是使用 Python 内置的 configparser 模块,它可以读写 INI 格式的配置文件。INI 格式的配置文件是一种简单的文本格式,由多个节(section)组成,每个节中包含多个键值对。

第二种方法是使用 Python 的 json 模块,它可以读写 JSON 格式的配置文件。JSON 格式是一种轻量级的数据交换格式,它使用键值对的方式来组织数据。

在本文中,我们将分别介绍这两种方法,并给出相应的代码示例。

读写 INI 配置文件

首先,我们来看如何使用 configparser 模块读写 INI 配置文件。

安装 configparser 模块

configparser 模块是 Python 内置的模块,不需要额外安装。

示例代码

下面是一个简单的示例代码,展示了如何读取一个 INI 配置文件中的配置项:

import configparser

# 创建一个 ConfigParser 对象
config = configparser.ConfigParser()

# 读取配置文件
config.read('config.ini')

# 获取某个配置项的值
username = config.get('User', 'Username')
password = config.get('User', 'Password')

print('Username:', username)
print('Password:', password)

上面的代码首先创建了一个 ConfigParser 对象,然后使用 read() 方法读取了一个名为 config.ini 的配置文件。接着,我们使用 get() 方法从 User 节中获取了 UsernamePassword 两个配置项的值,并打印出来。

写入 INI 配置文件

下面是一个示例代码,展示了如何将程序中的配置保存到一个 INI 配置文件中:

import configparser

# 创建一个 ConfigParser 对象
config = configparser.ConfigParser()

# 设置配置项的值
config['User'] = {
    'Username': 'admin',
    'Password': '123456'
}

# 将配置写入到文件
with open('config.ini', 'w') as configfile:
    config.write(configfile)

上面的代码首先创建了一个 ConfigParser 对象,然后通过设置键值对的方式给 User 节中的配置项赋值。最后,使用 write() 方法将配置写入到一个名为 config.ini 的文件中。

读写 JSON 配置文件

现在,我们来看如何使用 json 模块读写 JSON 配置文件。

示例代码

下面是一个简单的示例代码,展示了如何读取一个 JSON 配置文件中的配置项:

import json

# 读取配置文件
with open('config.json', 'r') as configfile:
    config = json.load(configfile)

# 获取某个配置项的值
username = config['User']['Username']
password = config['User']['Password']

print('Username:', username)
print('Password:', password)

上面的代码首先使用 open() 函数打开一个名为 config.json 的配置文件,并使用 json.load() 方法将其加载为一个 Python 字典。然后,我们可以通过索引的方式获取字典中的相应配置项的值,并打印出来。

写入 JSON 配置文件

下面是一个示例代码,展示了如何将程序中的配置保存到一个 JSON 配置文件中:

import json

# 设置配置项的值
config = {
    'User': {
        'Username': 'admin',
        'Password': '123456'
    }
}

# 将配置写入到文件
with open('config.json', 'w') as configfile:
    json.dump(config, configfile)

上面的代码首先通过设置键值对的方式给一个 Python 字典赋值,然后使用 json.dump() 方法将字典的内容写入到一个名为 config.json 的文件中。

总结

本文介绍了两种常用的方法来读写配置文件,分别是使用 configparser 模块读写 INI 配置文件,以及使用 json 模块读写 JSON 配置文件。使用这两种方法,我们