elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [python] ayuda caracteres especiales tildes y ñ python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [python] ayuda caracteres especiales tildes y ñ python  (Leído 6,229 veces)
asdexiva

Desconectado Desconectado

Mensajes: 217



Ver Perfil
[python] ayuda caracteres especiales tildes y ñ python
« en: 6 Agosto 2014, 22:21 »

Código:
import mechanize
import cookielib
import sys
import codecs





br = mechanize.Browser()


cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)



mensaje= codecs.open ("mensaje.txt", "r", "iso-8859-1")



lol=mensaje.read().split('\n')

          

text_file = codecs.open("Output.txt", "w","iso-8859-1")
text_file.write(str(lol))
text_file.close()

el programa importa el archivo mensaje.txt que tiene acentos,ñ y varias cosas y luego lo guarda con el nombre outpot.txt pero lo guarda con caracteres raros unicode alguien podria ayudarme a solucionarlo




« Última modificación: 10 Agosto 2014, 01:50 por asdexiva » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: [python] ayuda caracteres especiales tildes y ñ python
« Respuesta #1 en: 6 Agosto 2014, 22:39 »

Código:
text_file.write(str(lol))

Estás tratando la lista como si fuese un string por ende se muestra el contenido RAW, no estás convirtiendo la lista a String, debes unir los elementos de la lista:

Código
  1. text_file.write(''.join(lol))

Documentación:
· str()
· str.join()

Saludos.


« Última modificación: 6 Agosto 2014, 22:48 por Eleкtro » En línea


asdexiva

Desconectado Desconectado

Mensajes: 217



Ver Perfil
Re: [python] ayuda caracteres especiales tildes y ñ python
« Respuesta #2 en: 7 Agosto 2014, 01:59 »

gracias elektro como siempre muy asertivo :D  ;-)
elektro para que es ' ' <----- .join el .join no xD
por que esas 2 comillas si me pudieras decir gracias
« Última modificación: 7 Agosto 2014, 03:36 por asdexiva » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: [python] ayuda caracteres especiales tildes y ñ python
« Respuesta #3 en: 7 Agosto 2014, 09:54 »

por que esas 2 comillas si me pudieras decir gracias

Join es un método de String para concatenar un Iterable (una list por ejemplo), por lo tanto es necesario un String para utilizarlo, y las dos comillas es un String vacío para que nos permita utilizar métodos de String como ya dije que es Join.

Quizás haya otra forma más simple de unir una lista, pero en ese caso lo desconozco (practicamente no manejo Python)

Saludos!
« Última modificación: 7 Agosto 2014, 18:40 por Eleкtro » En línea


Godor

Desconectado Desconectado

Mensajes: 5


Ver Perfil
Re: [python] ayuda caracteres especiales tildes y ñ python
« Respuesta #4 en: 7 Agosto 2014, 17:35 »

Como bien dice Elektro, Join es un metodo para 'pegar los elementos de una lista', y se utiliza de la siguiente forma.

str.join(lista)

En donde el str será el 'pegamento' que ocuparemos para unir nuestros elementos de una lista, te daré algunos ejemplo a continuación.

Todos estos ejemplos serán utilizando la variable lista a definir a continuación.

Código
  1. lista = ['ayuda','caracteres','especiales','tildes']

Ejemplos.
Código
  1. x = ' '.join(lista)
  2. #salida 'ayuda caracteres especiales tildes'
Código
  1. x = 'ABC'.join(lista)
  2. #salida ayudaABCcaracteresABCespecialesABCtildes'
Además puedes ocupar este método para luego sumarlo con otros strings, por ejemplo, para agregar 'comas', en una oración.
Código
  1. x = ' '.join(lista[0:2])+', ' + ' '.join(lista[2::])
  2. #salida 'ayuda caracteres, especiales tildes'

Eso es en lo que puedo aportar en cuanto a la función join, saludos!
En línea

asdexiva

Desconectado Desconectado

Mensajes: 217



Ver Perfil
Re: [python] ayuda caracteres especiales tildes y ñ python
« Respuesta #5 en: 10 Agosto 2014, 01:49 »

muchas gracias a los 2 solucionado :D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines