用python编写程序将CSV格式文件与json文件格式互相转换
时间: 2023-07-16 09:14:53 浏览: 133
可以使用Python中的csv和json模块来实现CSV格式文件与JSON文件格式之间的转换。
CSV转JSON:
假设我们有一个名为 data.csv 的文件,其中包含以下内容:
```
name,age,gender
Alice,25,Female
Bob,30,Male
Charlie,35,Male
```
可以使用以下代码将其转换为JSON格式:
```python
import csv
import json
csv_file = open('data.csv', 'r')
json_file = open('data.json', 'w')
fieldnames = ('name', 'age', 'gender')
reader = csv.DictReader(csv_file, fieldnames)
for row in reader:
json.dump(row, json_file)
json_file.write('\n')
```
执行完以上代码后,会生成一个名为 data.json 的文件,其中包含以下内容:
```json
{"name": "Alice", "age": "25", "gender": "Female"}
{"name": "Bob", "age": "30", "gender": "Male"}
{"name": "Charlie", "age": "35", "gender": "Male"}
```
JSON转CSV:
假设我们有一个名为 data.json 的文件,其中包含以下内容:
```json
{"name": "Alice", "age": "25", "gender": "Female"}
{"name": "Bob", "age": "30", "gender": "Male"}
{"name": "Charlie", "age": "35", "gender": "Male"}
```
可以使用以下代码将其转换为CSV格式:
```python
import csv
import json
json_file = open('data.json', 'r')
csv_file = open('data.csv', 'w')
data = json_file.readlines()
fieldnames = ['name', 'age', 'gender']
writer = csv.DictWriter(csv_file, fieldnames=fieldnames)
writer.writeheader()
for item in data:
row = json.loads(item)
writer.writerow(row)
```
执行完以上代码后,会生成一个名为 data.csv 的文件,其中包含以下内容:
```
name,age,gender
Alice,25,Female
Bob,30,Male
Charlie,35,Male
```
以上就是将CSV格式文件与JSON文件格式互相转换的Python代码实现。
阅读全文