Re: Help sur Python

Page principale

Répondre à ce message
Auteur: Yth
Date:  
À: guilde
Sujet: Re: Help sur Python
Le 14 février 2023 17:00:10 UTC, Patrice Karatchentzeff <patrice.karatchentzeff@???> a écrit :
>J'utilise Emacs et il me montre tous les caractères...
>
>Je reviens d'avoir le même problème : bon, maintenant, j'ai compris.
>Je refais cette manip et ça fonctionne... Je capitalise déjà sur ma
>brève expérience de python !!!
>
>Pour Perl, tu es resté en 1990 (et encore), du temps de Perl 4.0.
>Depuis le 5.0, sorti en 1994, le code est parfaitement lisible (même
>si les masos peuvent toujours s'amuser : en Perl, on est libre, même
>de coder comme un plouc si cela nous amuse). Et contrairement à
>python, depuis donc bientôt 30 ans, le code est rétro-compatibles avec
>toutes les versions de 5.x (soit une trentaine de versions). Sans
>compter qu'une grosse partie du code des versions 1.0 à 4.0 tourne
>aussi :)
>
>Bien que j'assume tout à fait le fait de préférer Perl à tous les
>langages et donc d'être parfaitement partial, je trouve que les
>messages d'erreur de Perl sont toujours assez explicites sur les
>erreurs de syntaxe. Il faut quelques secondes pour corriger une erreur
>de syntaxe. On en est très TRÈS loin en python :)
>
>Python ne peut vraiment se décoder qu'avec un bon éditeur de texte,
>sinon c'est mort. Je comprends mieux maintenant pourquoi des IDE
>payants pullulent sur le créneau :)
>
>PK
>
>Le mar. 14 févr. 2023 à 16:34, Frédéric <fma38@???> a écrit :
>>
>> Le 14/02/2023, Patrice a écrit :
>>
>> > Je ne comprends pas la fascination des foules pour ce machin.
>>
>> Je compatis. Perl, c'était quand même vachement mieux : plus lisible, plus
>> facile à maintenir, toussa... ;o)
>>
>> Sans rire, tu n'aimes peut-être pas Python, mais c'est tout sauf un
>> langage probabiliste. Si ça ne passait pas, et que ça passe maintenant, c'est que
>> tu as forcément changé un truc. Tu avais peut-être un caractère alakon qui
>> traînait, que ton éditeur ne te montrait pas, ou une connerie du genre.
>>
>> Un bon éditeur qui comprend bien la syntaxe du langage permet de voir pas
>> mal de petites boulettes rien qu'avec l'analyse et la coloration
>> syntaxique.
>>
>> --
>>     Frédéric

>>
>
>


emacs est un très bon IDE Python.

Mon conseil est d'utiliser editorconfig, et en particulier pour les fichiers python, de supprimer les espaces en fin de ligne.
Tu n'en as jamais besoin, et une ligne vide mais avec des espaces compte comme une ligne indentée, donc peut péter ton code sur une mauvaise indentation.
C'est probablement le bug d'indentation le plus courant...
N'ayant pas le code exact qui a planté, impossible de te dire pourquoi ça a planté, mais je mise sur ça !
Note aussi que l'indentation d'une ligne ne comportant qu'un commentaire, a aussi du sens : soit ton commentaire est indenté dans le fil du code, soit il est en début de ligne, sans aucune espace ou tabulation avant.

Après, ton problème de message d'erreur pas clair ne vient pas de python, mais de la façon dont ton code est utilisé : le fichier est lu par ailleurs et le contenu envoyé à un eval python ou un truc du genre.
Et là, la stacktrace est imbitable puisqu'elle te parle du bidule qui charge ton code et de là où ça plante dans ce bidule, et pas du tout dans ton code.
Si tu avais moyen de traiter, pour tests, directement ton fichier python via l'interpréteur python, tu aurais une erreur bien plus claire t'indiquant précisément où ça ne va pas.

Peut-être simplement faire un « import tonfichier », pour détecter les erreurs de syntaxe.
Si ton code fait des imports inaccessibles hors scribus, ça plantera sur ces imports, mais après validation syntaxique.

Bref, mes deux euros 😃

- Yth.
--