import csv import json # defining the function to convert CSV file to JSON file def convjson(cleanedhm, js): # creating a dictionary mydata = {} # reading the data from CSV file with open(cleanedhm, encoding='utf-8') as csvfile: csvRead = csv.DictReader(csvfile) # Converting rows into dictionary and adding it to data for rows in csvRead: mykey = rows['hmid'] mydata[mykey] = rows # dumping the data with open('cleanedhm', encoding='utf-8') as jsonfile: jsonfile.write(json.dumps(mydata, indent=4)) # filenames cleanedhm = r'mydatalist.csv' js = r'mydatalist.json' # Calling the convjson function convjson(cleanedhm, js)¡Pandas es una herramienta realmente genial, y en este caso hace lo que necesitas en dos líneas muy fáciles!
import pandas as pd csv = pd.read_csv (r'Path where the CSV file is saved\File Name.csv') csv.to_json (r'Path where the new JSON file will be stored\New File Name.json')procesa tu archivo con pandas como un DataFrame y luego exporta con el método to_json()