You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.2 KiB
Python

import csv
import json
# Modified from https://www.geeksforgeeks.org/convert-csv-to-json-using-python/
# Function to convert a CSV to JSON
# Takes the file paths as arguments
def make_json(csvFilePath, jsonFilePath):
# create a dictionary
dictionary = {}
# Open a csv reader called DictReader
with open(csvFilePath, encoding='utf-8') as csvf:
csvReader = csv.DictReader(csvf)
# Convert each row into a dictionary
# and add it to data
for rows in csvReader:
# Assuming a column named 'English' to
# be the primary key
key = rows['English']
print("key is {}".format(key))
value = rows['Japanese']
print("value is {}".format(value))
dictionary[key] = value
# Open a json writer, and use the json.dumps()
# function to dump data
with open(jsonFilePath, 'w', encoding='utf-8') as jsonf:
jsonf.write(json.dumps(dictionary, ensure_ascii=False, indent=4))
# Driver Code
# Decide the two file paths according to your
# computer system
csvFilePath = r'dictionary.csv'
jsonFilePath = r'dictionary.json'
# Call the make_json function
make_json(csvFilePath, jsonFilePath)
# interesting project on pokemon csv
# https://amiradata.com/parse-and-convert-json-to-csv-python/