[pyar] Archivos en python

Roger Martinez Ramirez sunrise_sabe en hotmail.com
Vie Jul 20 19:33:38 ART 2012


Movistar cobra .55 y no .50
Un pequeño chascarrillo saludos.

Date: Fri, 20 Jul 2012 19:19:46 -0300
From: malderete en gmail.com
To: pyar en python.org.ar
Subject: Re: [pyar] Archivos en python

Buenas! como va?
2012/7/20 Daniel <dmlistapython en gmail.com>

El día 20 de julio de 2012 17:40, Javier Marín

<nano.world.contact en gmail.com> escribió:

> Buenas, tengo algunas dudas. Llevo un rato leyendo sobre archivos y decidí

> dejar de leer tanto y darle un tanto mejor al código. Hice un programita de

> práctica y quiero hacer que imprima por pantalla lo que se le manda a

> imprimir (que ya lo hace) y que eso mismo lo guarde en un simple archivo

> txt. Les dejo el código (que hasta ahora no me ha tirado errores) que por

> alguna razón corre, pero no guarda nada en el archivo...

>

>> #!/usr/bin/env python

>> #-*- coding:utf-8 -*-

>> from random import randint, choice

>> """

>>     Se totalizaran 100 llamadas

>>     Costo de llamadas: movilnet 0,38. Movistar 0.55. Digitel 0.45.

>>     El operador de llamada es aleatorio y el tiempo de la llamada.

>>     El tiempo de la llamada oscilará entre 3 y 20 minutos.

>>     Para cada llamada se debe mostrar el tiempo, la operadora y el costo.

>>     Se debe mostrar el recaudo total por todas las llamadas.

>> """

>> class llamadas:

>>     def __init__(self, time, oprs):

>>         self.time = time

>>         self.oprs = oprs

>>

>>     def registrar_llamadas(self):

>>         txt = open("llamadas.txt", 'w')

>>         for i in xrange(100):

>>             oprs1 = self.oprs.keys()

>>             oprs2 = self.oprs.values()

>>             op_azar = choice(oprs1)

>>             if op_azar == 'Movilnet':

>>                 cant_min = self.time * oprs2[0]

>>                 t.write ('Operadora \t Costo/min \n Tiempo \t Total \n

>> Movilnet \t 0.38 \t %d \t %1.2f' % (self.time, cant_min))

>>                 print 'Operadora \t Costo/min \n Tiempo \t Total \n

>> Movilnet \t 0.38 \t %d \t %1.2f' % (self.time, cant_min)

>>             elif op_azar == 'Movistar':

>>                 cant_min = self.time * oprs2[2]

>>                 txt.write ('Operadora \t Costo/min \n Tiempo \t Total \n

>> Movistar \t 0.38 \t %d \t %1.2f' % (self.time, cant_min))

>>                 print 'Operadora \t Costo/min \n Tiempo \t Total \n

>> Movistar \t 0.50 \t %d \t %1.2f' % (self.time, cant_min)

>>             else:

>>                 cant_min = self.time * oprs2[1]

>>                 txt.write ('Operadora \t Costo/min \n Tiempo \t Total \n

>> Digitel \t 0.38 \t %d \t %1.2f' % (self.time, cant_min))

>>                 print 'Operadora \t Costo/min \n Tiempo \t Total \n

>> Digitel \t 0.45 \t %d \t %1.2f' % (self.time, cant_min)

>>         txt = close("llamadas.txt")

>>

>> operadoras = {'Movilnet' : 0.38, 'Movistar' : 0.50, 'Digitel' : 0.45}

>> tiempo = randint(3, 21)

>> llamada = llamadas(tiempo ,operadoras)

>

>

>

> Detallando un poco. Cuando lo corro sin los txt, imprime por pantalla todo

> sin chistar, pero cuando lo pongo con los txt no me reporta nada, ningún

> problema, la cuestión va en que debería crear el archivo txt en el fichero

> donde se encuentra y reescribirlo; no lo hace. Lo hice a mano, pero tampoco

> lo reescribe. ¿Alguien me ilustra un poco más? Mucha teoría, sí, pero nada

> de práctica xD

> -
Si no veo mal... como dijieron antes no haces la llamada a "registrar_llamadas" y dentro de este metodo estas cerrando el archivo de una forma no muy comun...
deberias hacer:txt.close()y haces:txt = close("llamadas.txt")
saludos!
 -- Alderete, Martin Nicolas
NINJA-IDE Core Developer




_______________________________________________
pyar mailing list pyar en python.org.ar
http://listas.python.org.ar/listinfo/pyar

PyAr - Python Argentina - Sitio web: http://www.python.org.ar/

La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar 		 	   		  
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20120720/888ab643/attachment.html>


More information about the pyar mailing list