Jump to content
Fórum Script Brasil
  • 0

Problema Acentuação Python 2.7.6


Felipe222
 Share

Question

Olá!

 

Meu nome é Felipe, sou iniciante no mundo Linux e comecei a estudar Python 2.7.6 a pouco tempo quando me surgiu um problema:

 

Há cerca de uns 2 dias atrás, eu estava usando o ambiente interativo só para praticar mesmo, quando tentei executar este pequeno código:

 

- quando tentei comparar uma letra acentuada de uma variável o resultado estava dando sempre “ False ”

 

>>> palavra = "página"

>>> palavra [ 1 ] == "á"

>>> False

 

- quando dei um print do conteúdo da variável, ela foi exibida normalmente na tela.

 

>>> palavra = "página"

>>> print palavra

>>> página

 

- e quando tentei exibir a variável, para saber como o seu valor estava sendo armazenado, saiu isto:

 

>>> palavra = “página”

>>> palavra

>>> 'p\xc3\xa1gina'

 

Ate ai tudo bem, não me assustei, eu já havia ouvido falar que Python 2.7.6 tinha alguns detalhes relativos a codificação que poderiam causar este tipo de problema, na hora eu não me preocupei, deixei isso de lado por hora e fui terminar alguns outros testes que eu precisava fazer.

 

Porem, ontem quando tentei buscar soluções para esse problema, eu basicamente não consegui resolvê-lo, eu busquei em tudo quanto é lugar informações que pudesse me ajudar, mas nada adiantou.

 

O que eu encontrei principalmente dizia para alterar a codificação na qual o arquivo fonte seria salvo, introduzindo no código a codificação a ser usada:

 

#!/usr/bin/python
# -*- coding: latin-1 -*-
# coding: latin-1

 

# -*- coding: utf-8 -*-
# coding: utf-8
# -*- coding: iso-8859-1 -*-
# coding: iso-8859-1
 
- eu já tentei usar quase que todas as codificações que pude encontrar em uma serie de combinações diferentes e nada, o problema permanece

 

- eu tentei editar o fonte em diferentes editores de texto e tentando alterar a codificação em que o arquivo seria salvo, e também nada

 

- eu entrei nas opções do IDLE do Python 2.7.6 e lá na opção Default Source Encoding – está marcada UTF-8, e mesmo alterando para outras o problema permanece

 

- encontrei em alguns sites, sobre usar .enconde() e .decode() para codificar e decodificar, não sei exatamente para que isso funciona, foi mesmo o desespero batendo a porta, e sai isso:

 

>>> palavra = "página"

>>> palavra

>>> 'p\xc3\xa1gina'

 

>>> palavra.encode("utf-8")

 

Traceback (most recent call last):

File "<pyshell#2>", line 1, in <module>

palavra.encode("utf-8")

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1: ordinal not in range(128)

 

 

mas, quando tento codificar a variável sem que está contenha um caractere especial, pelo menos não é apresentado nenhum erro

 

>>> palavra = "Marcos"

>>> palavra

>>> 'Marcos'

>>> palavra.encode("utf-8")

>>>

 

Bom por hora é isso, se alguém souber o que pode estar acontecendo estou aguardando . . .

 

Observações:

 

- o problema acontece tanto em modo interativo quanto no modo de edição

 

- não tenho o Windows instalado para ver se o mesmo acontece na versão Windows, pois, alguns anos atrás quando arranhei um pouco de Python o mesmo problema aconteceu, mas a mudança de codificação resolveu o problema. O que não ocorre agora com o meu Linux

 

- tentei usar diferentes IDEs – Ninja IDE, Wing IDE free, e nada também

 

- baixei e instalei a IDLE do Python 3.4.3 mas aqui o problema dos acentos nem chega a ocorrer, muito provavelmente porque foi corrigido nesta versão do Python, eu ate poderia mudar para o Python 3, mas quero continuar um pouco mais no Python 2, antes de ir para o Python 3, além disso alguns programas e/ou bibliotecas ( principalmente a de Terceiros ) existentes no 2 podem não ser completamente compatíveis com o 3.

 

- fora o que já mencionei acima, por ser iniciante tanto no mundo Linux quanto em programação ( Python ), não busquei ainda qualquer informação e/ou dicas sobre o sistema operacional que pudesse estar causando este problema, principalmente para não piorar a situação

 

- se tiverem algum link, que acharem que possa me ajudar de alguma forma, seja para este problema em especial ou qualquer outro assunto, podem passar que tão logo quanto possível estarei dando uma olhada

 

Ubuntu 14.04 LTS - 32 bit - Python 2.7.6

 

IDLE - Python 2.7.6 (default, Jun 22 2015, 18:00:18)

[GCC 4.8.2] on linux2

 

Obrigado pela Atenção ! ! !

Edited by Felipe222
Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...