2010-10-24 4 views

Répondre

56

Il est lié à PEP 0401: BDFL Retirement

Barry fait référence à Barry Varsovie, un développeur Python bien connu. Le from __future__ import barry_as_FLUFL remplace essentiellement l'opérateur != par <>.

+3

Merci. J'ai édité votre réponse parce qu'elle présentait une erreur évidente :) – tzot

+12

Plus important encore, elle active la syntaxe '<>' dans Python 3. –

+1

Le lien indique que l'instruction 'print' est de retour. – manojlds

6

La blague du poisson d'avril PEP 0401 est vraiment drôle et donc son implémentation actuelle. Il fonctionne très bien interactivement à partir du terminal ou par python3 -i à partir de l'entrée standard, mais étonnamment pas à partir d'un script normal ou sans -i. Il fonctionne par eval(...) ou par compile(..) cette façon:

exec(compile('1<>0', 'foo', 'single', __future__.CO_FUTURE_BARRY_AS_BDFL)) 

vrai                                                                     plus drôle que horribles != qui a causé la douleur du doigt

+0

Grande réponse car elle explique que cela ne fonctionne pas dans un script normal. Mais je ne suis pas sûr de ce qui se passe avec la dernière ... phrase? La mise en forme et la ponctuation sont en partie blagues, en partie imprudentes, en partie vandales. Je ne peux pas le dire. –

+0

Oh, aussi, pour clarifier: même si vous utilisez '-i', le script qui est exécuté avant d'arriver au REPL doit suivre la syntaxe normale de Python 3, sinon vous obtiendrez une erreur de syntaxe. Et si vous obtenez une erreur de syntaxe dans le script, alors le REPL se comportera comme si vous n'aviez jamais fait l'importation. (Vous avez juste à le faire à nouveau à la REPL, mais cela ne sert à rien de le mettre dans votre script en premier lieu.) C'est OK si le script soulève (la plupart?) D'autres types d'exceptions cependant; l'importation sera toujours en vigueur lorsque vous serez transféré vers le REPL dans ce cas. –

6

Comme mentionné plus haut, barry Barry Varsovie, bien connu de base Python Dev , le FLUFL Cependant n'a pas été expliqué

Il est synonyme de "Friendly Language Uncle For Life" une blague à l'intérieur parmi les autres développeurs de base python à l'époque. La raison pour laquelle cela permet la syntaxe <>, c'est qu'il était la personne principale qui voulait utiliser l'opérateur <>

+1

Je me suis juste vanté ici, mais j'ai assisté à un Hackathon Core Python avec Barry et nous avons eu du plaisir à partager des histoires amusantes :) Ceci est similaire au Dictateur Benevolent de Live de Guido van Rossum (BDFL). C'est un gars vraiment sympa :) – MicroTransactionsMatterToo

Questions connexes