Mauvaise structuration de Python ?
Fermé
Chris_B
-
19 juil. 2018 à 11:05
georges97 Messages postés 13108 Date d'inscription lundi 31 janvier 2011 Statut Contributeur Dernière intervention 18 février 2025 - 19 juil. 2018 à 14:11
georges97 Messages postés 13108 Date d'inscription lundi 31 janvier 2011 Statut Contributeur Dernière intervention 18 février 2025 - 19 juil. 2018 à 14:11
Bonjour,
Il y a quelque chose que je ne comprends pas, dès le départ.
A moins que quelque chose m'échappe, au simple examen des exemples, il paraît fondamentalement mal structuré.
Sous couvert de simplification, il semble que les instructions composites ne se terminent jamais !
Python a l'air de dépendre entièrement de la mise en page (retraits ou tabulations). Avec la rigidité et toutes les bogues invisibles que cela peut impliquer (mélanges de tabulations et d'espaces ...). Je doute même qu'il puisse être décrit en BNF.
Je dois me tromper puisqu'il existe et connaît du succès.
Si quelqu'un pouvait m'expliquer. Merci.
Il y a quelque chose que je ne comprends pas, dès le départ.
A moins que quelque chose m'échappe, au simple examen des exemples, il paraît fondamentalement mal structuré.
Sous couvert de simplification, il semble que les instructions composites ne se terminent jamais !
Python a l'air de dépendre entièrement de la mise en page (retraits ou tabulations). Avec la rigidité et toutes les bogues invisibles que cela peut impliquer (mélanges de tabulations et d'espaces ...). Je doute même qu'il puisse être décrit en BNF.
Je dois me tromper puisqu'il existe et connaît du succès.
Si quelqu'un pouvait m'expliquer. Merci.
A voir également:
- Mauvaise structuration de Python ?
- Citizen code python avis - Accueil - Outils
- Trouver la position d'un élément dans une liste python ✓ - Forum Python
- Python generator - Télécharger - Sécurité
- Python retour à la ligne dans le code - Forum Python
1 réponse
georges97
Messages postés
13108
Date d'inscription
lundi 31 janvier 2011
Statut
Contributeur
Dernière intervention
18 février 2025
2 491
Modifié le 19 juil. 2018 à 14:12
Modifié le 19 juil. 2018 à 14:12
Bonjour,
En attendant des réponses plus pertinentes:
Python repose effectivement sur une structure dépendant des retraits (4 espaces pour initier un bloc, remplacé mais non conseillé par une tabulation).
Cela permet, dans l'esprit du concepteur de ce langage, Guido Van Rossum, de s'affranchir des points-virgules en fin d'instruction et des accolades délimitant les blocs.
Cela rend effectivement le code très sensible aux omissions ou fautes de frappe et le débogage plus délicat.
Cependant certains des IDE gérant ce langage signalent visuellement les fautes de syntaxes, dont celles ne respectant pas cette convention.
De plus, on prend rapidement l'habitude d'écrire en observant cette méthode.
Le succès de ce langage vient de sa relative facilité et concision, de la possibilité de l'utiliser comme un langage de script pour écrire des prototypes vs la phase de compilation des langages C ou C++, du nombre important de bibliothèques et plugins (applications scientifiques, interfaces graphiques, interfaçages avec des modules en C), facilité de l'usage des variables dynamiques vs statiques et gestion de la mémoire compliquée en C, utilisation universelle (plateformes PC, Mac, Linux, Raspberry) et portabilité, compléments pour gestion de serveurs Web, de la multiplicité des paradigmes couverts (procédural, orienté objet, fonctionnel) etc..
Sans doute aussi les succès d'un langage progresse avec l'implication et l'empathie des helpers et utilisateurs. Il existe effectivement des détracteurs préférant la rigueur et la plus grande rapidité des langages compilés. Tout étant affaire d'usage et de'investissement en temps d'apprentissage.
Cordialement
En attendant des réponses plus pertinentes:
Python repose effectivement sur une structure dépendant des retraits (4 espaces pour initier un bloc, remplacé mais non conseillé par une tabulation).
Cela permet, dans l'esprit du concepteur de ce langage, Guido Van Rossum, de s'affranchir des points-virgules en fin d'instruction et des accolades délimitant les blocs.
Cela rend effectivement le code très sensible aux omissions ou fautes de frappe et le débogage plus délicat.
Cependant certains des IDE gérant ce langage signalent visuellement les fautes de syntaxes, dont celles ne respectant pas cette convention.
De plus, on prend rapidement l'habitude d'écrire en observant cette méthode.
Le succès de ce langage vient de sa relative facilité et concision, de la possibilité de l'utiliser comme un langage de script pour écrire des prototypes vs la phase de compilation des langages C ou C++, du nombre important de bibliothèques et plugins (applications scientifiques, interfaces graphiques, interfaçages avec des modules en C), facilité de l'usage des variables dynamiques vs statiques et gestion de la mémoire compliquée en C, utilisation universelle (plateformes PC, Mac, Linux, Raspberry) et portabilité, compléments pour gestion de serveurs Web, de la multiplicité des paradigmes couverts (procédural, orienté objet, fonctionnel) etc..
Sans doute aussi les succès d'un langage progresse avec l'implication et l'empathie des helpers et utilisateurs. Il existe effectivement des détracteurs préférant la rigueur et la plus grande rapidité des langages compilés. Tout étant affaire d'usage et de'investissement en temps d'apprentissage.
Cordialement