[Python-es] [SOLUCIONADO] Consulta por sentencia while

Juan Luis Cano Rodríguez juanlu001 en gmail.com
Mar Ene 24 20:02:36 CET 2012


Y como ya te dijeron más arriba David y Álvaro, fíjate que hay bastante
código repetido. Cuando veas cómo definir tus propias funciones, puedes
incluir las líneas repetidas ahí para que dejen de estarlo.

2012/1/24 Darío <darioslc en gmail.com>

> (Lo envío de nuevo porque creo que no llegó)
>
> Acabo de reescribir el código y ahora me queda mucho más claro el
> tema, me llamó la atención que me haya dado error al insertar el while
> con un espaciado, es decir, puse:
>  while ..... y correspondía
> while o sea sin el espacio inicial.
> Este era el error que me daba:
> dario en debian:~$ python diario.py
>  File "diario.py", line 28
>   while preg!='n':
>   ^
> IndentationError: unexpected indent
>
> Ahora funciona como quería y el código me quedó:
>
>
> 1 # coding: utf-8
>  2
>  3 # Conversor de segundos en días, horas, minutos y segundos
>  4 # Pedimos datos
>  5 dato=raw_input(u'Ingresar segundos: ')
>  6
>
>  7 # Hacemos un cast, convirtiéndo la cadena en un número largo
>  8 dato= long(dato)
>
>  9 # comprabación del valor introducido:
>
>  10 if  dato>=2**32:
>  11         print "Ingrese un valor menor que 2³²"
>  12 else:
>  13         # Días
>  14         ndias, aux = divmod(dato,86400)
>  15         # Horas
>  16         nhoras, aux = divmod(aux,3600)
>  17         # Minutos y segundos
>  18         nmin, nseg= divmod(aux,60)
>  19         # Muestra del resultado
>  20
>  21         print '%d dias, %d horas, %d minutos, %d segundos' % \
>  22         (ndias,nhoras,nmin,nseg)
>  23
>
>  24 preg = raw_input(u'Desea ingresar otro valor (S/N)? ')
>  25 #print preg
>  26 preg=str(preg)
>  27
>  28 while preg!='n':
>  29
>  30  # Pedimos datos nuevamente
>  31       ndato=raw_input('Ingresar segundos: ')
>  32  # Hacemos un cast, convirtiendo la cadena en un número largo
>  33       ndato= int(ndato)
>  34  # comprabación del valor introducido:
>  35
>  36       if  ndato>=2**32:
> 37                  print "Ingrese un valor menor que 2³²"
>  38       else:
>  39                  # Días
>  40                  ndias, aux = divmod(ndato,86400)
>  41                  # Horas
>  42                  nhoras, aux = divmod(aux,3600)
>  43                  # Minutos y segundos
>  44                  nmin, nseg= divmod(aux,60)
>  45                  # Muestra del resultado
>  46                  print '%d dias, %d horas, %d minutos, %d segundos' % \
>  47                  (ndias,nhoras,nmin,nseg)
>  48
>  49
>  50                  preg = raw_input(u'Desea ingresar otro valor (S/N)? ')
>  51                  #print preg
>  52                  preg=str(preg)
>
>
> La verdad que es muy simple y más legible a pesar de ser un ejemplo
> muy simple, valga la redundancia.
>
> Gracias a todos por aclararme las dudas!
>
>
> --
> Darío
>
>
> |-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|
> Por favor, no utilice formatos de archivo propietarios para el intercambio
> de documentos, como ser DOC, XLS, BMP, PPT, RAR, MP3, DWG,
> MOV, FLV, WMV, etc.  sino  ODT, ODS, DJVU, PDF, TXT,
> CSV, PNG, FLAC, OGV, GZ o cualquier otro que no obligue a utilizar
> un programa de un fabricante concreto.
> Info: http://www.gnu.org/philosophy/no-word-attachments.es.html
>        http://www.vaslibre.org.ve/publicaciones/odfvsooxml-es.pdf
>
> |-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120124/fbce481e/attachment.html>


Más información sobre la lista de distribución Python-es