Ayuda con import csv

Hola, me llamo Julio. Soy nuevo en esto de la programación. Arranque con Java el año pasado y este empecé con python.
Tengo este código:

class PlanillaClaculo:
def init(self):
print(guardar)
archivo = open(’…/salida.txt’, ‘a’)
archivo.close()
for k, v in guardar.items():
print(“Cantidad de {0} = {1} kg”.format(k,v))
print(’’)

forma parte de un script que se puede ver (si es necesario) completo en:

“guardar” es una variale global con estos formatos

{‘cemento’: 9.0, ‘arena’: 20.0}
{‘cemento’: 5.4, ‘calComun’: 8.2, ‘arena’: 33.0, ‘ladComun’: 60}
{‘cemento’: 2.0, ‘calComun’: 10.0, ‘cascotes’: 83.0, ‘arena’: 40.0}

cada diciconario se guarda en el archivo “salida.txt” uno a continuacion del otro.

No encuentro la manera de llevarlo a una planilla de cálculo excel, lo intenté con este código:

Dicwriter
import csv
with open(‘name.csv’) as csvfile:
reader = csv.DictWriter(csvfile)
for row in reader:
print(row[‘first_name’], row[‘last_name’])

pero no salió bien

Agradecería ayuda para continuar.

Desde ya, muchas gracias.

Hola Julio, bienvenido!

De la clase tuya PlanillaCalculo veo algo raro, no se si es la intención… abrís un archivo, y al toque lo cerrás sin escribirle nada. Luego hacés prints, que aparecerán por pantalla, pero no van al archivo!

No miré el código entero luego, salto a la forma de escribir un archivo separado por comas (que el excel te lo va a abrir bien!). Ahí veo que abrís un DictWriter (para escribir), pero que lo llamás reader, como si fuese un lector, y luego lo usás como lector (nunca escribís en él), ahí debe estar la confusión. Podés ver en el tercer ejemplo en la documentación cómo escribir.

Saludos,

1 me gusta

Gracias por la respuesta Facundo.

Si, en la PlanillaCalculo, estaba comentado lo que estaba bien.

Voy a tratar de implementar el ejemplo de la documentación.

Nuevamente, gracias.