用Python进行Quine

Quine是一个程序,不需要输入,但是会产生输出。它将显示它自己的源代码。此外,Quine还有一些条件。我们无法在程序内打开源代码文件。

范例程式码

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

输出结果

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

这个Quine如何运作?

这里是一种简单的字符串格式。我们定义了一个变量'a',在a内,我们存储了'a =%r; print(a %% a)'。然后,我们打印a的值,并用a的值替换%r。因此,奎纳正在工作。

通过这样打开文件,我们可以完成相同的任务。

print(open(__file__).read())

但是在这种情况下,我们违反了奎因规则。我们无法在Quine中打开文件。