Чтобы преобразовать файл CSV в формат JSON с помощью Python, вы можете использовать несколько методов. Вот несколько часто используемых подходов:
Метод 1: использование модулей csv и json
import csv
import json
def csv_to_json(csv_file_path, json_file_path):
# Read CSV file
with open(csv_file_path, 'r') as csv_file:
csv_data = csv.DictReader(csv_file)
# Convert CSV data to JSON
json_data = json.dumps([row for row in csv_data])
# Write JSON data to file
with open(json_file_path, 'w') as json_file:
json_file.write(json_data)
Метод 2. Использование библиотеки pandas
import pandas as pd
def csv_to_json(csv_file_path, json_file_path):
# Read CSV file using pandas
data_frame = pd.read_csv(csv_file_path)
# Convert data frame to JSON
json_data = data_frame.to_json(orient='records')
# Write JSON data to file
with open(json_file_path, 'w') as json_file:
json_file.write(json_data)
Метод 3. Использование библиотеки csvkit
from csvkit import convert
def csv_to_json(csv_file_path, json_file_path):
# Convert CSV to JSON using csvkit
convert(csv_file_path, json_file_path, format='json')
Метод 4: анализ CSV вручную и создание JSON
Этот метод подходит для простых файлов CSV без сложной структуры.
import csv
import json
def csv_to_json(csv_file_path, json_file_path):
# Read CSV file
with open(csv_file_path, 'r') as csv_file:
csv_data = csv.reader(csv_file)
headers = next(csv_data)
# Create JSON data
json_data = []
for row in csv_data:
json_data.append(dict(zip(headers, row)))
# Write JSON data to file
with open(json_file_path, 'w') as json_file:
json.dump(json_data, json_file)
Подводя итог, вы можете преобразовать файл CSV в JSON с помощью Python, используя модули csv и json, библиотеку pandas, библиотеку csvkit или вручную анализируя файл CSV. Каждый метод имеет свои преимущества, поэтому вы можете выбрать тот, который лучше всего соответствует вашим требованиям.