Autre que d'être ennuyé par la syntaxe des espaces blancs, je ne suis pas un haineux, je ne comprends tout simplement pas la fascination de Python.
J'apprécie la poésie de Perl et j'ai programmé de beaux services Web en bash & korn et shebang gnuplot
. J'écris des documents troff
et ça ne me dérange pas, REXX. Tcl n’a plus été utile il ya quelques années, mais qu’est-ce qui pue vraiment chez Python ? Je vois des offres d'emploi et de nombreux candidats avec cela comme un prix et un trophée sur leur curriculum vitae.
Je suppose qu'en réalité, j'essaye de devenir personnellement vendu pour ça, je ne trouve pas de raison.
0x09
, vous n’y seriez probablement pas opposé et utiliseriez probablement un retrait constant dans la largeur d’indentation de votre choix. C'est la même chose que Python permet.Réponses:
Python est un langage bien conçu avec une syntaxe relativement épurée, une bibliothèque standard complète, une excellente documentation incluse et tierce, un déploiement généralisé et l’immédiateté d’un langage de style "script" (c’est-à-dire sans étape de compilation explicite).
la source
len
?__double_underscore_names__
, il se mélangealllowercasefunctionames
avecmixed_underscore
et desmixedCamelCase
noms. Cela nécessite un:
à la findef
ou des boucles. Il utilise beaucoup d'abréviation étrangestr
,dict
,islice
. On dirait qu'il n'y a pas eu de convention du tout. C'est un chaos pur. Peps, pips, zens ... cela ressemble plus à une religion de python qu'à une langue. Il a peut-être quelques fonctionnalités intéressantes, mais cela n’explique pas pourquoi tant de gens sont si excités à ce sujet. Pyhon n'a rien de spécial. Juste un autre produit mal conçu.def
? Pourquoi est-ce que je définis une fonction avec adef
et pas afunc
? Il n'y a pas d'autre langue aussi peu intuitive que le python.J’ai trouvé que Python était le langage de programmation le plus naturel dans lequel j’ai écrit du code. J’ai codé dans beaucoup de langages avant et après Python, et dans une mesure plus ou moins grande, il faut combattre le langage pour faites-le faire ce que vous voulez. Python réduit massivement cette lutte. Eric S Raymond a dit beaucoup mieux que moi dans Why Python?
À ce propos, Python conserve sa propreté même en évoluant rapidement. Dans la plupart des langues avec lesquelles j'ai travaillé, l'introduction de nouvelles fonctionnalités linguistiques introduit beaucoup de rides. Mais avec Python, même les principales caractéristiques linguistiques (les décorateurs viennent à l’esprit) s’ajoutent tout le temps, sans que l’on se sente comme des laids.
la source
J'espère que cela ne semble pas trop cynique, mais IMO Python est si populaire pour les mêmes raisons que Java, C # et Objective-C. Non pas parce que les langues elles-mêmes ont quelque chose de spectaculaire, mais parce qu'elles ont chacune un sponsor magacorporate capable de produire beaucoup de battage publicitaire, de publicités, de bibliothèques et de soutien pour leur langue préférée.
la source
D'après mon expérience, les personnes qui éprouvent une grande joie dans la programmation cherchent souvent une langue qui leur convient mieux que ce qu'elles ont appris à l'école ou à l'université. En gros, cela signifie qu'ils passeront de la version par défaut de PHP / Visual Basic / C ++ / Java / C # à quelque chose de plus exotique (métier / carrière), tel que Python, Ruby, Haskell et même perl (en raison de son énorme valeur de piratage et de son obscurité).
Ne vous méprenez pas, il y a des programmeurs C # / VB.net très expérimentés qui sont très fiers de leur travail et de leur code (les gars de StackOverflow en sont un très bon exemple), mais vous ne devenez pas un programmeur python simplement parce que c'est ce qu'ils vous ont appris à l'école; ce doit être votre propre décision.
Je pense que Jeff Atwoord a publié un article sur ce blog, mais je ne le trouve pas. Si je le trouve, je mettrai à jour ce commentaire.
la source
Comparé à Ruby, qui est vraiment cool et produit d’impressionnants Code Golf-offs, Python a cette philosophie fondamentale: "Il devrait y avoir un moyen - et de préférence un seul - moyen évident de faire [les choses]", ce qui signifie la façon idiomatique de Python. J'ai trouvé que c'était un avantage énorme par rapport à Ruby.
la source
J'ai commencé à aimer Python pour la même raison que celle décrite par Eric S. Raymond: l'acte d'écrire des programmes en Python est très similaire conceptuellement à penser à concevoir le code dans ma tête.
Apprendre à être un bon programmeur Python m'a fait un bien programmeur C # mieux. Cela rendait beaucoup plus facile la compréhension de LINQ. Je n'aurais peut-être jamais embrassé un type du genre
Dictionary<string, Func<T>>
ouyield return
m'étais habitué à l' utiliser si je n'avais pas utilisé les classes et les générateurs en Python. Il est beaucoup plus facile de comprendre AOP maintenant que j'ai utilisé des décorateurs Python. La liste continue.la source
Premièrement, les petites bizarreries linguistiques telles que l'indentation forcée en Python importent peu si le langage lui-même est puissamment expressif et utile. Au début, cela m'a également refusé, mais j'ai vite appris à regarder au-delà et maintenant, je ne le ressens même pas comme un obstacle, car la langue est beaucoup plus facile pour moi. C'est comme des symboles à variables dans Perl , c’est une bizarrerie linguistique inoffensive et toute personne à l’aise dans cette langue ne se sent pas gênée par celle-ci.
Pour comprendre les raisons pour lesquelles tant de gens pensent que Python est génial, essayez d’apprendre la langue. Les raisons sont pour la plupart identiques à celles de Perl. J'apprécie la syntaxe en Python (par exemple, la compréhension de liste, la syntaxe de POO, etc.), mais c'est vraiment subjectif et votre opinion peut être différente. Je préfère Python pour les projets plus importants, alors que j'utilise toujours Perl pour les scripts plus petits.
Et c'est la réponse à votre question. Vous comparez Python à Perl, bash et tcl. Le problème, c’est que la comparaison n’est pas juste. Des langages comme bash ont été conçus pour écrire de petits scripts afin d’automatiser les tâches courantes. Certaines personnes pensent également que Perl devient difficile à manier si le code devient suffisamment volumineux (ce n'est pas bien écrit par Perl, mais il est difficile d'obtenir du code bien écrit dans un grand projet). IMHO Python se distingue des autres langages de «script» en ce sens qu'il s'adapte très bien aux grands projets ainsi qu'aux petits scripts uniques. Je pense que Ruby a également cette même qualité.
la source
La philosophie selon laquelle le dictateur bienveillant devrait appliquer son idée de bon style [1], son idée de bonne programmation, son idée de la façon de programmer me frustrent régulièrement. Je ne pense pas comme van Rossum. Cependant, son langage résiste aux tentatives d’exprimer des pensées non-van Rossum. Sa pensée fonctionne vraiment bien pour beaucoup (la plupart?) Des programmeurs. Mais il me semble que je ne rentre pas dans son modèle de programmation.
C'est pourquoi je crois que Perl est une langue supérieure.
[1] Voir son blog sur la suppression
reduce
.la source
Je pense que dans une certaine mesure, Python est le seul langage de programmation dont vous aurez jamais besoin, à moins que vous ne souhaitiez écrire un noyau de système d'exploitation. Il convient à l’utilisation interactive, au piratage aléatoire, à l’administration système, aux applications scientifiques, aux outils du système d’exploitation, aux applications Web, aux applications GUI, à l’intégration, etc., etc. Il est portable, gratuit et largement utilisé. Aucun autre langage de programmation ne couvre réellement tous ces domaines dans la pratique. C'est un très bon investissement stratégique pour une personne et une entreprise.
la source
Depuis 2004, j'ai utilisé Python pour développer:
En 2004, Python était le langage de choix, car les scripts Python sont portables sous Windows, Linux et Mac avec très peu de modifications.
la source
Pour moi, Python a été un cher ami. C'est un langage de script et de prototypage décent. Les éléments clés auxquels je peux penser sont:
la source
Il est élégant et très facile à apprendre. Une fois familiarisé avec ses types de base (notamment les listes), votre productivité n’a aucune limite. Il est parfait pour les algorithmes de prototypage ou pour les écrire dans un langage pseudo-code pouvant éventuellement être placé directement sur une machine. C'est également un excellent langage de script pour effectuer des tâches répétitives ou effectuer des opérations fastidieuses sur des fichiers. Je l'utilise comme langage collant pour permettre aux sous-processus de communiquer entre eux: pas aussi puissant que bash pour certaines tâches simples, mais PLUS facile si vous avez besoin de faire plus que simplement une ligne de code.
Et puis cela ne fait pas la distinction entre les fonctions et les sous-programmes, vous voyez ce que je veux dire.
la source
De nombreux amateurs de Python que je vois viennent de passer des environnements C et ont été impressionnés par des choses comme celle
"Hello "+ "World"
-ci"Hello World"
. Je dirais donc que c’est le premier langage de script qui ne rassemble pas de balises ésotériques / spécifiques et se répand donc parmi les martyrs comme un feu dans une forêt asséchée. Et la mode ainsi créée vit désormais seule.la source
Pour revenir à la question maintenant que je suis un peu moins fatigué:
Le langage Python que j’ai trouvé particulièrement adapté aux tâches de programmation scientifique est l’un des endroits où sa popularité croît assez fortement. Quelques raisons pour lesquelles:
Ce n'est pas la fin, tout, la totalité des langages de programmation, mais c'est un décent.
la source
Python est un langage très «webby» à la fois dans les frameworks disponibles (Django, Zope, etc.) et dans les bibliothèques facilement importables, qui couvrent encore de nombreuses fonctions web.
Pour les développeurs Web passant d'une simple compétence HTML, CSS + JS (anecdote à une source importante de nouveaux programmeurs ces dernières années), je pense que cela en fait une proposition très attrayante (idem Ruby).
En outre, Google n'est pas Microsoft ....
la source
Je pense que l'une des principales raisons est que 90% de Google est fabriqué à partir de Python.
Cependant, Python est également un langage de programmation puissant et facile à apprendre. Il possède des structures de données de haut niveau efficaces et une approche simple mais efficace de la programmation orientée objet. La syntaxe élégante et le typage dynamique de Python, ainsi que sa nature interprétée, en font un langage idéal pour les scripts et le développement rapide d'applications dans de nombreux domaines sur la plupart des plateformes.
L'interpréteur Python et la vaste bibliothèque standard sont disponibles gratuitement sur le site Web de Python, à l' adresse http://www.python.org/ , sous forme de source ou de fichier binaire , et peuvent être librement distribués. Le même site contient également des distributions et des pointeurs vers de nombreux modules, programmes et outils Python tiers gratuits, ainsi que de la documentation supplémentaire.
L'interpréteur Python est facilement étendu avec de nouvelles fonctions et types de données implémentés en C ou C ++ (ou d'autres langages appelables à partir de C). Python convient également comme langage d'extension pour des applications personnalisables.
la source