[PYTHON] Acentos en ascii

Iniciado por <Trocutor>, 18 Octubre 2017, 18:36 PM

0 Miembros y 1 Visitante están viendo este tema.

<Trocutor>

Buenas tardees

Alguna manera de que esto no me de error

  File "Harper.py", line 242, in <module>
    if 'Adiós' in Respuesta:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 3: ordinal not in range(128)

Ese es el error y este el codigo :
Código (python) [Seleccionar]
  print 'Adios ' + Nombre
  os.system('say Adios, ' + Nombre + ', ha sido un placer ayudarte') 
  os.system('clear')
  sys.exit()

  if 'adiós' in Respuesta:
  print 'Adios ' + Nombre
  os.system('say Adios, ' + Nombre + ', ha sido un placer ayudarte')
  os.system('clear')
  sys.exit()


Respuesta es un raw_input escrito

Si alguien me puede decir como hacer que si escribo adiós no me de error se lo agradeceria, muchas gracias

engel lex

Tienes que usar utf8, coloca en la cabecera

# -*- coding: utf-8 -*-
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

<Trocutor>

Cita de: engel lex en 18 Octubre 2017, 18:41 PM
Tienes que usar utf8, coloca en la cabecera

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

Siempre lo uso, el principio de mi script

#! /usr/bin/env python
# -*- coding: utf-8 -*-

import random
import time
import smtplib
import socket
import sys

<Trocutor>

Vale ya esta resuelto, asi lo hice

  adios = 'adiós'
  adios2 = adios.decode('utf-8')

  if adios2 in Respuesta:
     print 'Adios ' + Nombre
     os.system('say Adios, ' + Nombre + ', ha sido un placer ayudarte')     
     os.system('clear')
     sys.exit()