无法在python中使用int(原始输入()

无法在python中使用int(原始输入(),python,Python,我正在一个编码比赛中尝试这个。我相信我已经解决了这个问题,但是在接受输入时遇到了一些问题。帮帮我: 输入 输入的第一行包含一个表示测试用例数量的整数T。T测试用例的描述如下。每个测试用例由一行组成,其中包含两个空格分隔的字符串R和S,表示两个配方 现在,我已经对这个问题进行了编码,它似乎起作用了,但是每当我直接复制粘贴输入值时,它都会给出这个错误消息,从而失败 每当我试图提交问题时,都会收到一条错误消息。可能他们也在复制粘贴输入值并检查输出。我的代码框架是这样的 如何修复\n错误?我

我正在一个编码比赛中尝试这个。我相信我已经解决了这个问题,但是在接受输入时遇到了一些问题。帮帮我:


输入

输入的第一行包含一个表示测试用例数量的整数T。T测试用例的描述如下。每个测试用例由一行组成,其中包含两个空格分隔的字符串R和S,表示两个配方


现在,我已经对这个问题进行了编码,它似乎起作用了,但是每当我直接复制粘贴输入值时,它都会给出这个错误消息,从而失败



每当我试图提交问题时,都会收到一条错误消息。可能他们也在复制粘贴输入值并检查输出。我的代码框架是这样的




如何修复
\n
错误?我认为整个输入被视为一个字符串。

首先拆分输入,然后转换整数:

T, body = raw_input().split("\n", 1)
for x in xrange(int(T)):
   ...

这将拆分一次,并为您提供第一个数字项,然后是输入字符串的其余部分

首先拆分输入,然后转换整数:

T, body = raw_input().split("\n", 1)
for x in xrange(int(T)):
   ...

这将拆分一次,并为您提供第一个数字项,然后是输入字符串的其余部分

如果整个输入作为一个字符串读入,您可以尝试使用
stdin.readline()
而不是
raw\u input
来捕获输入流:

from sys import stdin
T = int(stdin.readline())
然而,由于这是一场编码竞赛,我认为速度是关键。由于IO操作的计算成本很高,因此您实际上应该欢迎一次读取所有输入的机会。换句话说,一次读入所有内容,然后在代码中解析输入通常会更快。我猜在你的例子中,它看起来是这样的(假设它是设计出来的):


如果将整个输入作为一个字符串读入,可以尝试使用
stdin.readline()
而不是
raw\u input
来捕获输入流:

from sys import stdin
T = int(stdin.readline())
然而,由于这是一场编码竞赛,我认为速度是关键。由于IO操作的计算成本很高,因此您实际上应该欢迎一次读取所有输入的机会。换句话说,一次读入所有内容,然后在代码中解析输入通常会更快。我猜在你的例子中,它看起来是这样的(假设它是设计出来的):


拆分输入,使用拆分列表从进程中提取整数

s = raw_input()
s = s.split()
T = int(s[0])

ans=[]

for st in s[1:]:
//Do the rest 

拆分输入,使用拆分列表从进程中提取整数

s = raw_input()
s = s.split()
T = int(s[0])

ans=[]

for st in s[1:]:
//Do the rest 

是,整个字符串被视为一个输入。您只需将输入存储为一个列表,并使用该列表,而无需在循环中调用
raw\u input
,这类似于:

def whetherGranama(str1,str2):
    return "NO"
    #can't give the implementation out yet

input_lines = raw_input().split("\n")
T = int(input_lines[0])
ans=[]
for x in range(1,T):
    s = input_lines[x]
    s1,s2=s.split()
    ans.append(whetherGranama(s1,s2))

for elem in ans:
    print elem

是,整个字符串被视为一个输入。您只需将输入存储为一个列表,并使用该列表,而无需在循环中调用
raw\u input
,这类似于:

def whetherGranama(str1,str2):
    return "NO"
    #can't give the implementation out yet

input_lines = raw_input().split("\n")
T = int(input_lines[0])
ans=[]
for x in range(1,T):
    s = input_lines[x]
    s1,s2=s.split()
    ans.append(whetherGranama(s1,s2))

for elem in ans:
    print elem