Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: <Trocutor> en 18 Octubre 2017, 18:36 PM

Título: [PYTHON] Acentos en ascii
Publicado por: <Trocutor> en 18 Octubre 2017, 18:36 PM
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
Título: Re: [PYTHON] Acentos en ascii
Publicado por: engel lex en 18 Octubre 2017, 18:41 PM
Tienes que usar utf8, coloca en la cabecera

# -*- coding: utf-8 -*-
Título: Re: [PYTHON] Acentos en ascii
Publicado por: <Trocutor> en 18 Octubre 2017, 18:43 PM
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
Título: Re: [PYTHON] Acentos en ascii
Publicado por: <Trocutor> en 18 Octubre 2017, 20:01 PM
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()