5 个回答
1
你需要定义一个叫做 ONLINE_JUDGE 的变量——这其实是一个“如果”,而不是真正的“条件编译”。
ONLINE_JUDGE = 0
if ONLINE_JUDGE:
import math
2
这对我来说有点太复杂了。那这个怎么样:
import sys
try: fin = open('Problem.in')
except: fin = sys.stdin
这个很通用,而且本身就很方便。可以说是二合一。
2
看起来你想用这个来提交解决方案给一个在线评测系统。对于gcc编译器,评测系统会提供一个参数 -D ONLINE_JUDGE
。这个参数的作用就像你在代码里写了以下内容:
#define ONLINE_JUDGE
Python没有预处理器。所以你不能像在C语言中那样在代码里或者通过命令行定义宏。当你启动Python解释器时,也没有这种方式。因此,我觉得在线评测系统不太可能为Python提供类似的选项。不过,它可能会提供一些命令行参数,你可以通过 sys.argv[1:]
来使用。你可以查看在线评测系统上用来启动Python的命令(应该在他们的网站上有说明)。