我刚才正在尝试编码比赛。
我被给予N行输入是整数,所以拿这些输入,我使用下面的代码。
arr = [int(input()) for i in xrange(N)]
# where N is a given number of Inputs
由于这段代码,我得到了TLE(时间限制超出)错误。
但是当我将输入代码更改为以下内容时,我的代码在没有TLE的情况下被接受。
arr = []
for i in xrange(N):
arr.append(int(raw_input()))
#where N is the given number of inputs
有些人可以解释一下,为什么执行时间有所不同,但据我的理解,两种代码形式都必须以相同的方式执行相同的任务。
答案 0 :(得分:5)
两个代码段不同。一个使用raw_input()
,另一个使用input()
。 raw_input()
预计会比input()
更快,因为它不会将输入字符串解析并评估为Python表达式。