logo

Quine в Python

Куайн це програма, яка не приймає вхідних даних, але виводить копію власного коду. Ми обговорили quine в C . The shortest possible quine in python is just a single line of code! Python
_='_=%r;print _%%_';print _%_ 
In case of Python3.x Python
_='_=%r;print (_%%_)';print (_%_) 
Пояснення: Наведений вище код є класичним використанням форматування рядків. Спочатку ми визначаємо змінну _ і присвоєння йому '_=%r;print _%%_'. По-друге, ми друкуємо _%_ . Тут ми друкуємо _ з _ як вхідні дані для форматування рядка. Отже %r в _ отримує значення _. Можна навіть використовувати %s замість %r . Ми використовували подвійний % в '_=%r;друк _%%_' для виходу % . But you may say that the below code is the smallest right! Python
print open(__file__).read() 
You need to note that it is indeed the smallest python program that can print its own source code but it is not a quine because a quine should not use ВІДЧИНЕНО() функцію для друку вихідного коду.