Los archivos CSV (o valores separados por comas) representan datos en un formato tabular, con varias filas y columnas. Un ejemplo de un archivo CSV puede ser una hoja de cálculo de Excel. Estos archivos tienen la extensión .csv, por ejemplo, geeksforgeeks .csv . En este archivo de muestra, cada fila representará un registro del conjunto de datos y cada columna indicará una variable de característica única.
Por otro lado, JSON (o notación de objetos de JavaScript) es una notación similar a un diccionario que se puede usar importando el paquete JSON en Python. Cada registro (o fila) se guarda como un diccionario independiente, con los nombres de las columnas como claves del diccionario. Todos estos registros como diccionarios se guardan en un diccionario anidado para componer el conjunto de datos completo. Se almacena con la extensión .json, por ejemplo, geeksforgeeks .json
Consulte los siguientes artículos para comprender los conceptos básicos de JSON y CSV.
Convertir CSV a JSON
Crearemos un archivo JSON que tendrá varios diccionarios, cada uno representando un registro (fila) del archivo CSV, con la clave como columna especificada.
Ejemplo de archivo CSV utilizado:
Python3
import csv import json # Function to convert a CSV to JSON # Takes the file paths as arguments def make_json(csvFilePath, jsonFilePath): # create a dictionary data = {} # 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 'No' to # be the primary key key = rows['No'] data[key] = rows # 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(data, indent=4)) # Driver Code # Decide the two file paths according to your # computer system csvFilePath = r'Names.csv' jsonFilePath = r'Names.json' # Call the make_json function make_json(csvFilePath, jsonFilePath)
Producción:
Publicación traducida automáticamente
Artículo escrito por khushali_verma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA