Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
2
respuestas

Prompts: Conversión de formatos

Tengo unos datos almacenados en un diccionario de Python. Necesito que pases esta información a formato CSV para Google Sheets. El código lo encuentras entre ###

'001': {
    'nombre': 'João',
    'edad': 30,
    'cargo': 'Gerente',
    'salario': 5000.00
},
'002': {
    'nombre': 'Maria',
    'edad': 25,
    'cargo': 'Analista',
    'salario': 3500.00
},
'003': {
    'nombre': 'Pedro',
    'edad': 28,
    'cargo': 'Desarrollador',
    'salario': 4000.00
}

} ###

Respuesta de ChatGPT:

Aquí tienes el código para convertir los datos de tu diccionario en formato CSV, listo para ser importado a Google Sheets:

Código Python:

import csv

# El diccionario de datos
data = {
    '001': {
        'nombre': 'João',
        'edad': 30,
        'cargo': 'Gerente',
        'salario': 5000.00
    },
    '002': {
        'nombre': 'Maria',
        'edad': 25,
        'cargo': 'Analista',
        'salario': 3500.00
    },
    '003': {
        'nombre': 'Pedro',
        'edad': 28,
        'cargo': 'Desarrollador',
        'salario': 4000.00
    }
}

# Nombre del archivo CSV
csv_file = "datos_empleados.csv"

# Abrir el archivo en modo de escritura
with open(csv_file, mode='w', newline='') as file:
    writer = csv.writer(file)

    # Escribir la cabecera
    writer.writerow(['ID', 'Nombre', 'Edad', 'Cargo', 'Salario'])

    # Escribir los datos
    for key, value in data.items():
        writer.writerow([key, value['nombre'], value['edad'], value['cargo'], value['salario']])

print(f"Los datos han sido guardados en {csv_file}")

Explicación:

  1. Importar csv:
  • El módulo csv es usado para manejar archivos CSV en Python.
  1. Definir el diccionario:
  • El diccionario data contiene la información de los empleados, organizada por ID.
  1. Nombre del archivo CSV:
  • El archivo CSV se llamará datos_empleados.csv.
  1. Abrir el archivo en modo de escritura:
  • Se abre el archivo en modo 'w' (escritura) y se asegura de que no haya saltos de línea adicionales con newline=''.
  1. Escribir la cabecera:
  • La primera fila del CSV contiene los encabezados: ID, Nombre, Edad, Cargo, y Salario.
  1. Escribir los datos:
  • Se recorre el diccionario data, escribiendo cada fila en el archivo CSV.

Resultado del archivo CSV: Cuando abras el archivo 'datos_empleados.csv' en Google Sheets, se verá así:

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

Este archivo puede ser fácilmente importado a Google Sheets.

2 respuestas

Hola Daniel, espero que estés bien

Gracias por compartir tu ejercício práctico con nosotros! Tu contribución es fundamental para el crecimiento de nuestra comunidad en Alura. Sigue comprometido y no dudes en regresar al foro en caso que tengas alguna duda o dificultad.

¡Abrazos y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!

Me brindan esta informacion de un diccionario de Phyton, necesito convertir estos datos al formato CSV para importarlos a Google Sheets y realizar un análisis avanzado. El codigo se encientra entre ###

'001': {

    'nombre': 'João',
    'edad': 30,
    'cargo': 'Gerente',
    'salario': 5000.00
},
'002': {
    'nombre': 'Maria',
    'edad': 25,
    'cargo': 'Analista',
    'salario': 3500.00
},
'003': {
    'nombre': 'Pedro',
    'edad': 28,
    'cargo': 'Desarrollador',
    'salario': 4000.00
}

} ###

Respuesta del ChatGPT

Aquí tienes los datos convertidos al formato CSV:

Copiar código ID,Nombre,Edad,Cargo,Salario 001,João,30,Gerente,5000.0 002,Maria,25,Analista,3500.0 003,Pedro,28,Desarrollador,4000.0 Puedes copiar este texto y pegarlo directamente en Google Sheets para realizar tu análisis. Si necesitas el archivo CSV, también puedo generarlo para que lo descargues. ​

Convertir el diccionario de Python proporcionado al formato CSV.

import csv import io

Datos proporcionados

data = { '001': {'nombre': 'João', 'edad': 30, 'cargo': 'Gerente', 'salario': 5000.00}, '002': {'nombre': 'Maria', 'edad': 25, 'cargo': 'Analista', 'salario': 3500.00}, '003': {'nombre': 'Pedro', 'edad': 28, 'cargo': 'Desarrollador', 'salario': 4000.00} }

Crear un archivo CSV en memoria

output = io.StringIO() csv_writer = csv.writer(output)

Escribir el encabezado

header = ['ID', 'Nombre', 'Edad', 'Cargo', 'Salario'] csv_writer.writerow(header)

Escribir los datos

for key, value in data.items(): row = [key, value['nombre'], value['edad'], value['cargo'], value['salario']] csv_writer.writerow(row)

Obtener el contenido del archivo CSV

output.seek(0) csv_content = output.getvalue()

Cerrar el archivo en memoria

output.close()

csv_content

Resultado 'ID,Nombre,Edad,Cargo,Salario\r\n001,João,30,Gerente,5000.0\r