associação pythonbrasil[11] django zope/plone planet Início Logado como (Entrar)

Diferenças para "QuinePy"

Diferenças entre as versões de 1 e 6 (5 versões de distância)
Revisão 1e 2007-09-13 20:11:46
Tamanho: 586
Comentário: Em python parece fácil não?
Revisão 6e 2008-09-26 14:07:40
Tamanho: 586
Editor: localhost
Comentário: converted to 1.6 markup
Deleções são marcadas assim. Adições são marcadas assim.
Linha 1: Linha 1:
= Receita: QuinePy =

Este script imprime seu próprio código e gera um arquivo idêntico como saída. Para este tipo de programa é dado o nome de "quine", conhecido dentro dos problemas da computação.
Este script imprime seu próprio código e gera um arquivo idêntico como saída. Para este tipo de programa é dado o nome de "quine", bem conhecido dentro dos problemas da computação.
Linha 6: Linha 4:
Linha 9: Linha 6:
import sys

if __name__ == '__main__':
   print "
d = ['d = ', 'f = open("saida.py","w+")', 'd[0] = d[0] + repr(d)', 'for i in d:', ' print i', ' f.write(i+"\\n")', 'f.close()']
d = ['d = ', 'f = open("saida.py","w+")', 'd[0] = d[0] + repr(d)', 'for i in d:', ' print i', ' f.write(i+"\\n")', 'f.close()']
Linha 18: Linha 12:
f.close()"
f.close()
Linha 22: Linha 15:
Como era de se esperar o problema feito em python ficou bem mais fácil não?
Linha 26: Linha 20:

Este script imprime seu próprio código e gera um arquivo idêntico como saída. Para este tipo de programa é dado o nome de "quine", bem conhecido dentro dos problemas da computação.

Código

   1 d = ['d = ', 'f = open("saida.py","w+")', 'd[0] = d[0] + repr(d)', 'for i in d:', ' print i', ' f.write(i+"\\n")', 'f.close()']
   2 f = open("saida.py","w+")
   3 d[0] = d[0] + repr(d)
   4 for i in d:
   5  print i
   6  f.write(i+"\n")
   7 f.close()

Como era de se esperar o problema feito em python ficou bem mais fácil não?

Volta para CookBook.


RodrigoHübner