def start(fileName):
fileReader = open(fileName)
for row in fileReader:
print row,
if __name__ == "__main__":
import sys
if len(sys.argv) <= 1:
print "usage quine /path/to/file"
sys.exit(-1)
fileName = sys.argv[0]
start(fileName)
python quine.py foo
答案 0 :(得分:9)
不,quine不应该接受任何输入:
quine不接受任何输入。允许输入将允许源代码通过键盘输入程序,打开程序的源文件和类似的机制。
<强>更新强>
您需要将源编码到quine本身。一个quine由两部分组成:执行实际打印的代码和代表源代码的数据。这似乎是递归的,但事实并非如此。对于一个好的quine教程,我建议你查看this link;这就是我用我设计的语言创建一个quine的原因。
答案 1 :(得分:2)
Quines无法访问文件系统,所以没有。正如维基百科所述,“允许输入将允许通过键盘将源代码提供给程序,打开程序的源文件以及类似的机制。”