Forum Pplware
enconding problem no Python - alguém sabe ajudar - Versão de Impressão

+- Forum Pplware (http://forum.pplware.com)
+-- Fórum: Mais Tech (/forumdisplay.php?fid=11)
+--- Fórum: Programação e Web (/forumdisplay.php?fid=16)
+--- Tópico: enconding problem no Python - alguém sabe ajudar (/showthread.php?tid=1964)



enconding problem no Python - alguém sabe ajudar - balaico - 17-03-2009 16:26

Boas, estou a criar uma função em python que acede a uma BD e retorna certos valores que lhe é pedido, até aí tudo bem, só que quando vou "correr" no python (f5 - minha versão é 2.5.4), abre-me uma janela de erro com a seguinte mensagem:
Syntax Error
There's an error in you program:
enconding problem: utf-8

No entanto reparei que o erro estava na linha 2 cp1252, tive a ver e a pesquisar e descobri que tem a ver com uma possível conversão que teoricamente é utf-8 mas no fundo é cp1252 (pelo que percebi).

Aqui está o código fonte (as 2 primeiras alíneas):
#! /usr/bin/env python
# -*- coding: cp1252 -*-

Se alguém souber ajudar, qualquer ajuda é bem vinda. Obrigado.


RE: enconding problem no Python - alguém sabe ajudar - Bruno Bernardino - 17-03-2009 19:12

Não percebo nada de python (a nível de sintaxe), mas olhando para esse erro diria que talvez no editor onde fizeste isso estarias a introduzir caracteres em iso-8859-1 (o default, por exemplo, no notepad do windows)? Tens caracteres como ', «, », ou com acentos no código?


RE: enconding problem no Python - alguém sabe ajudar - balaico - 18-03-2009 16:02

Obrigada Bruno Bernardino.
O problema estava no intrepretador python, tive que alterar no notepad++ para encode utf-8 without BOM, depois foi só alterar alguns caracteres malucos "et voila".


RE: enconding problem no Python - alguém sabe ajudar - MarcoMonteiro - 19-03-2009 01:00

lol, pois ainda à alguns dias falamos noutro post sobre a codificação dos ficheiros... ehehehe


pior, no outro dia um colega meu que esteve duas horas a fazer debug quando ele apenas estava com o numlook ligado, e isto em alguns portáteis não se repara à primeira.. são aquelas coisas básicas que nos passam sempre ao lado.. Tongue


RE: enconding problem no Python - alguém sabe ajudar - balaico - 19-03-2009 10:39

(19-03-2009 01:00)MarcoMonteiro Escreveu:  lol, pois ainda à alguns dias falamos noutro post sobre a codificação dos ficheiros... ehehehe


pior, no outro dia um colega meu que esteve duas horas a fazer debug quando ele apenas estava com o numlook ligado, e isto em alguns portáteis não se repara à primeira.. são aquelas coisas básicas que nos passam sempre ao lado.. Tongue

Outras das coisas que é "extremamente chato" em python é a indentação, se trabalhares com o notepad++, tens que ter em atenção em definir a tab para 4 espaços e mesmo assim, muitas vezes convém ser mesmo tu a dar esses 4 espaços ...

Quanto a debuging ...., é a malapata da programação, "perde-se" tempo que é uma coisa louca as vezes por cauisa de uma coisinha tão pequena ...


RE: enconding problem no Python - alguém sabe ajudar - MarcoMonteiro - 19-03-2009 17:11

(19-03-2009 10:39)balaico Escreveu:  
(19-03-2009 01:00)MarcoMonteiro Escreveu:  lol, pois ainda à alguns dias falamos noutro post sobre a codificação dos ficheiros... ehehehe


pior, no outro dia um colega meu que esteve duas horas a fazer debug quando ele apenas estava com o numlook ligado, e isto em alguns portáteis não se repara à primeira.. são aquelas coisas básicas que nos passam sempre ao lado.. Tongue

Outras das coisas que é "extremamente chato" em python é a indentação, se trabalhares com o notepad++, tens que ter em atenção em definir a tab para 4 espaços e mesmo assim, muitas vezes convém ser mesmo tu a dar esses 4 espaços ...

Quanto a debuging ...., é a malapata da programação, "perde-se" tempo que é uma coisa louca as vezes por cauisa de uma coisinha tão pequena ...


a minha experiencia em python é muito pequena... mas sim essa é uma grande chatice para quem está habituado a outras é que na indentação
é sempre a bombar...


RE: enconding problem no Python - alguém sabe ajudar - abip - 23-03-2009 20:21

Tambem nao tenho grande experiencia com Python mas até ao momento ainda nao tive problemas com o editor PyScripter.

É muito raro editar codigo Python no notepad++, utilizo sempre o Pyscripter, é freeware, faz indentantação automatica, o autocomplete ja funciona relativamente bem e o melhor de tudo é que tem um interface simples para debug.
PyScripter

A ActiveState lançou também uma versão gratuita do editor komodo, o "Komodo edit" mas este não tem interpretador associado Confused.
Komodo Edit


RE: enconding problem no Python - alguém sabe ajudar - MarcoMonteiro - 26-03-2009 00:36

muito boa dica abip Big Grin