ywagashiのブログ

徒然なるままに

Quine in Python

Quine(クワイン)とは・・・
自身のソースコードと同じ文字列を出力するプログラム。
分析哲学の大家W. V. Quineに因む。

よく知られたやつ

_='_=%r;print(_%%_)';print(_%_)

(出力)

_='_=%r;print(_%%_)';print(_%_)

自分の知る限りこれが最短。

ただし、ファイルの読み込みを許せばもう少し短縮できる。

print(*open(__file__))

(出力)

print(*open(__file__))


更に短いものがあれば教えてください。

Pythonでやっても面白みはない。
文法的自由度の高いRubyなどではもっと派手なものが作れる。