用python将txt文件批量转为json
时间: 2023-08-06 19:07:54 浏览: 546
好的,我来为你讲解如何使用Python将txt文件批量转为JSON。
假设你有多个txt文件,它们的文件名都以.txt结尾,你想将它们批量转换为JSON格式并保存在同一目录下。具体的步骤如下:
1. 导入必要的模块
首先,需要导入os和json模块。os模块提供了访问操作系统功能的接口,json模块提供了处理JSON格式的函数。
```
import os
import json
```
2. 遍历txt文件
使用os模块的listdir函数遍历存储txt文件的目录。然后,使用Python的for循环来迭代目录中的每个文件,找到以.txt结尾的文件,并对它们进行操作。在循环中,使用os.path.join函数创建文件的完整路径。
```
txt_folder = "/path/to/txt/folder" # 存储txt文件的目录
json_folder = "/path/to/json/folder" # 存储json文件的目录
for file_name in os.listdir(txt_folder):
if file_name.endswith(".txt"):
txt_path = os.path.join(txt_folder, file_name)
```
3. 读取txt文件并转换为JSON格式
对于每个txt文件,使用Python的with语句打开文件并读取其内容。然后,使用json模块的loads函数将其转换为Python中的字典类型。
```
with open(txt_path, 'r') as file:
text = file.read()
data = json.loads(text)
```
4. 将Python字典转换为JSON格式
使用json模块的dumps函数将Python字典转换为JSON格式。
```
json_data = json.dumps(data)
```
5. 保存JSON文件
将JSON数据写入名为file_name.json的文件中,并将其保存在json_folder中。可以使用Python内置的open函数打开一个新文件,并使用write函数将JSON数据写入该文件。
```
json_path = os.path.join(json_folder, file_name.replace(".txt", ".json"))
with open(json_path, 'w') as file:
file.write(json_data)
```
最终的完整代码如下:
```
import os
import json
txt_folder = "/path/to/txt/folder" # 存储txt文件的目录
json_folder = "/path/to/json/folder" # 存储json文件的目录
for file_name in os.listdir(txt_folder):
if file_name.endswith(".txt"):
txt_path = os.path.join(txt_folder, file_name)
with open(txt_path, 'r') as file:
text = file.read()
data = json.loads(text)
json_data = json.dumps(data)
json_path = os.path.join(json_folder, file_name.replace(".txt", ".json"))
with open(json_path, 'w') as file:
file.write(json_data)
```
希望这个代码可以帮助到你。如果还有其他问题,请随时问我。
阅读全文