Как работает эта программа Python 3?

Нашел этот пример quine:

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

Я получаю, что %s и %r выполняют функции str и repr , как указано здесь , но что именно означает s%s и как работает quine?

    2 Solutions collect form web for “Как работает эта программа Python 3?”

    s устанавливается в:

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

    поэтому %r заменяется именно тем, что ( сохраняя одинарные кавычки) в s%s и final %% с одним % , давая:

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

    и, следовательно, quine.

    Оператор x % y означает подстановку значения y в строку формата x , так же как C printf. Также обратите внимание, что спецификатор %% означает буквенный знак%, поэтому s%%s в строке формата будет печататься как s% s и не будет записывать строку.

    Python - лучший язык программирования в мире.