向json文件里追加键值对
时间: 2023-07-01 21:20:48 浏览: 107
要向 JSON 文件中追加键值对,你可以使用 Python 的 json 模块和 fileinput 模块。具体步骤如下:
1. 首先,你需要导入 json 和 fileinput 模块:
```python
import json
import fileinput
```
2. 然后,你可以使用 json.load() 方法读取 JSON 文件中的数据,并将其存储在一个 Python 字典中:
```python
with open('data.json', 'r') as f:
data = json.load(f)
```
3. 接下来,你可以向字典中添加新的键值对,例如:
```python
data['new_key'] = 'new_value'
```
4. 最后,你可以使用 fileinput.FileInput() 方法将修改后的数据写回到 JSON 文件中:
```python
with fileinput.FileInput('data.json', inplace=True) as file:
for line in file:
print(line.replace(json.dumps(data), json.dumps(data, indent=4)), end='')
```
在这个示例中,我们使用 fileinput.FileInput() 方法将 JSON 文件作为输入,并使用 inplace=True 参数表示我们要在原文件中进行修改。然后,我们使用 for 循环逐行读取文件内容,并使用 print() 方法将修改后的内容输出到文件中。需要注意的是,我们在 print() 方法中使用了 replace() 方法,将原始数据和修改后的数据进行替换。最后,我们使用 end='' 参数确保不会在每行输出后添加额外的换行符。
完整的示例代码如下:
```python
import json
import fileinput
# 读取 JSON 文件中的数据
with open('data.json', 'r') as f:
data = json.load(f)
# 向字典中添加新的键值对
data['new_key'] = 'new_value'
# 将修改后的数据写回文件中
with fileinput.FileInput('data.json', inplace=True) as file:
for line in file:
print(line.replace(json.dumps(data), json.dumps(data, indent=4)), end='')
```
执行以上代码后,你就可以向 JSON 文件中追加新的键值对了。
阅读全文
相关推荐
















