44 votes

python quine le plus court ?

_='_=%r;print _%%_';print _%_

Est-ce le quine de python le plus court possible, ou peut-on faire mieux ? Celui-ci semble s'améliorer sur toutes les entrées de The Quine Page .

Je ne compte pas le programme 'vide' trivial, et je ne compte pas la soumission de Terry Reedy qui est sus à cause des guillemets (si c'est autorisé, est-ce que "hello world" est un quine ? ou "'" d'ailleurs ? )

70voto

Beurtschipper Points 755

Je vais juste laisser ceci ici (enregistrer sous exceptionQuine.py):

     File "exceptionQuine.py", line 1
        File "exceptionQuine.py", line 1
        ^
IndentationError: unexpected indent

23voto

Mechanical snail Points 8589

Techniquement, le quine Python le plus court est le fichier vide. En dehors de ce cas trivial :

Étant donné que l'impression de Python ajoute automatiquement une nouvelle ligne, le quine est en fait _='_=%r;print _%%_';print _%_\n (où \n représente un seul caractère de nouvelle ligne dans le fichier).

14voto

wintermute Points 147

Les deux

 print open(__file__).read()

et tout ce qui implique l'importation ne sont pas des quines valides, car un quine par définition ne peut prendre aucune entrée. La lecture d'un fichier externe est considérée comme une entrée, et donc un quine ne peut pas lire un fichier, y compris lui-même.

Pour mémoire, techniquement parlant, le quine le plus court possible en python est un fichier vierge, mais c'est aussi une sorte de triche.

11voto

OlivierBlanvillain Points 1252

Encore plus court :

 print(__file__[:-3])

Et nommez le fichier print(__file__[:-3]).py ( Source )

Edit : en fait,

 print(__file__)

nommé print(__file__) fonctionne aussi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X