Foros del Web » Programando para Internet » Python »

Unicode decode error ascii codec can't decode byte

Estas en el tema de Unicode decode error ascii codec can't decode byte en el foro de Python en Foros del Web. Como les va chicos, les cuento que estoy empezando con python y tengo un problemita. Instale python de 32 bits para windows para poder usar ...
  #1 (permalink)  
Antiguo 18/09/2012, 13:55
 
Fecha de Ingreso: marzo-2007
Mensajes: 340
Antigüedad: 14 años, 2 meses
Puntos: 4
Unicode decode error ascii codec can't decode byte

Como les va chicos, les cuento que estoy empezando con python y tengo un problemita.

Instale python de 32 bits para windows para poder usar el IDE PyScripter pero cuando ejecuto este codigo obtengo el siguiente error despues de q me pide la fecha:



Código:
# -*- coding: utf-8 -*-
class ModeloDePresupuesto:
    # Datos comerciales
    titulo = "PRESUPUESTO"
    encabezado_nombre = "Eugenia Bahit"
    encabezado_web = "www.eugeniabahit.com.ar"
    encabezado_email = "[email protected]"

    # Datos impositivos
    alicuota_iva = 21

    # Propiedades relativas al formato
    divline = "="*80

    # Setear los datos del cliente
    def set_cliente(self):
        self.empresa = raw_input('\tEmpresa: ')
        self.cliente = raw_input('\tNombre del cliente: ')

    # Setear los datos básicos del presupuesto
    def set_datos_basicos(self):
        self.fecha = raw_input('\tFecha: ')
        self.servicio = raw_input('\tDescripción del servicio: ')
        importe = raw_input('\tImporte bruto: $')
        self.importe = float(importe)
        self.vencimiento = raw_input('\tFecha de caducidad: ')

    # Calcular IVA
    def calcular_iva(self):
        self.monto_iva = self.importe*self.alicuota_iva/100

    # Calcula el monto total del presupuesto
    def calcular_neto(self):
        self.neto = self.importe+self.monto_iva

    # Armar el presupuesto
    def armar_presupuesto(self):
        """
            Esta función se encarga de armar todo el presupuesto
        """
        txt = '\n'+self.divline+'\n'
        txt += '\t'+self.encabezado_nombre+'\n'
        txt += '\tWeb Site: '+self.encabezado_web+' | '
        txt += 'E-mail: '+self.encabezado_email+'\n'
        txt += self.divline+'\n'
        txt += '\t'+self.titulo+'\n'
        txt += self.divline+'\n\n'
        txt += '\tFecha: '+self.fecha+'\n'
        txt += '\tEmpresa: '+self.empresa+'\n'
        txt += '\tCliente: '+self.cliente+'\n'
        txt += self.divline+'\n\n'
        txt += '\tDetalle del servicio:\n'
        txt += '\t'+self.servicio+'\n\n'
        txt += '\tImporte: $%0.2f | IVA: $%0.2f\n' % (
                                  self.importe, self.monto_iva)
        txt += '-'*80
        txt += '\n\tMONTO TOTAL: $%0.2f\n' % (self.neto)
        txt += self.divline+'\n'
        print txt

    # Método constructor
    def __init__(self):
        print self.divline
        print "\tGENERACIÓN DEL PRESUPUESTO"
        print self.divline
        self.set_cliente()
        self.set_datos_basicos()
        self.calcular_iva()
        self.calcular_neto()
        self.armar_presupuesto()

# Instanciar clase
presupuesto = ModeloDePresupuesto()
Otra cosita, pueden recomendarme un IDE copado y liviano ?

Gracias !
  #2 (permalink)  
Antiguo 18/09/2012, 15:30
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 9 años, 3 meses
Puntos: 35
Respuesta: Unicode decode error ascii codec can't decode byte

Yo uso Geany y me va de 10
  #3 (permalink)  
Antiguo 18/09/2012, 17:08
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 16 años, 1 mes
Puntos: 1360
Respuesta: Unicode decode error ascii codec can't decode byte

A mi me funciona perfectamente si lo ejecuto en mi consola.

Checa que tu archivo lo estés guardando en UTF-8 y no en Latin-1 o alguna otra codificación.

PD: Esa no es la forma de utilizar Programación Orientada a Objetos.

Última edición por razpeitia; 18/09/2012 a las 17:34
  #4 (permalink)  
Antiguo 18/09/2012, 21:26
 
Fecha de Ingreso: marzo-2007
Mensajes: 340
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Unicode decode error ascii codec can't decode byte

Razpeitia, podes recomendarme un tutorial de python para aprender adecuandamente POO ?

Estoy usando actualmente el de maestrosdelweb.
  #5 (permalink)  
Antiguo 19/09/2012, 01:12
 
Fecha de Ingreso: marzo-2007
Mensajes: 340
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Unicode decode error ascii codec can't decode byte

Por cierto, el problema no es el formato. El archivo se guarda en UTF8 (No Bom)

Este es el traceback:

  #6 (permalink)  
Antiguo 19/09/2012, 16:23
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 13 años, 1 mes
Puntos: 1329
Respuesta: Unicode decode error ascii codec can't decode byte

Qué es lo que pones en el raw_input en set_datos_basicos?

Saludos
__________________
Grupo Telegram Docker en Español
  #7 (permalink)  
Antiguo 19/09/2012, 17:30
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 16 años, 1 mes
Puntos: 1360
Respuesta: Unicode decode error ascii codec can't decode byte

El problema no parece ser de python en si, si no del IDE que estas usando. Puedes probar con el IDE que te instala python por defecto. Seguramente hay si corre.
  #8 (permalink)  
Antiguo 19/09/2012, 19:38
 
Fecha de Ingreso: marzo-2007
Mensajes: 340
Antigüedad: 14 años, 2 meses
Puntos: 4
Respuesta: Unicode decode error ascii codec can't decode byte

Cual es el ide que instala python por defecto ?

En cuanto a la consola de dos q se habre cuando se ejecuta un codigo en python, hay alguna forma de que no se cierre cuando finaliza la ejecucion ? Porque nunca llego a ver el resultado. (uso windows)

Última edición por WebDeveloperZ; 19/09/2012 a las 19:47

Etiquetas: ascii, byte, codec, decode, gui, nombre, php, unicode
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:36.