Python 我不知道互动任务中的stdout有什么问题,测试系统说出现了空闲限制
互动者在新台词上给出节目所问问题的答案,但同花顺有一些问题。它在测试服务器上不起作用,但在我的计算机上一切正常Python 我不知道互动任务中的stdout有什么问题,测试系统说出现了空闲限制,python,stdout,Python,Stdout,互动者在新台词上给出节目所问问题的答案,但同花顺有一些问题。它在测试服务器上不起作用,但在我的计算机上一切正常 from sys import stdin, stdout islier = False print('? 1') stdout.flush() t = int(stdin.read().rstrip('\n')) if t == 1: islier = True l = 1 r = 100000
from sys import stdin, stdout
islier = False
print('? 1')
stdout.flush()
t = int(stdin.read().rstrip('\n'))
if t == 1:
islier = True
l = 1
r = 100000
while l != r:
print('? ' + str((l + r) // 2))
stdout.flush()
t = int(stdin.read().rstrip('\n'))
if islier:
t = abs(t - 1)
if t == 1:
r = (l + r) // 2
else:
l = (l + r) // 2
print('! ' + str((l + r) // 2))
问题可能不在于冲洗。在我的机器上,运行
sys.stdin.read()
会阻塞系统,这可能会导致超出空闲限制错误。使用sys.stdin.readline()
,因为这将在用户键入enter时返回:
t=int(stdin.readline().rstrip('\n'))
问题可能不是冲洗。在我的机器上,运行sys.stdin.read()
会阻塞系统,这可能会导致超出空闲限制错误。使用sys.stdin.readline()
,因为这将在用户键入enter时返回:
t=int(stdin.readline().rstrip('\n'))
听起来测试服务器没有正确地模拟标准数据流——假设这是您没有指定的“某些问题”之一。您能指定flush的问题是什么吗?代码是否挂起或刷新是否引发错误?你能告诉我这个程序要完成什么吗?测试服务器不要说有什么问题,我想服务器不能得到我的请求。我尝试了sys.stdout.write(),但是它太糟糕了。顺便说一句,如果你对print语句使用sys.stdout.flush()
,你可以使用print(“hi”,flush=True)
。我试过了,但它不起作用,好像测试服务器没有正确地模拟stdout流——假设这是“一些问题”之一您还没有指定。您可以指定flush的问题是什么吗?代码是否挂起或刷新是否引发错误?你能告诉我这个程序要完成什么吗?测试服务器不要说有什么问题,我想服务器不能得到我的请求。我试过sys.stdout.write(),但是它太糟糕了。顺便说一句,如果你在print语句中使用sys.stdout.flush()
,你可以使用print(“hi”,flush=True)
。我试过了,但它不起作用。非常感谢你,我现在就试试,并向你报告结果。感谢上帝,我能为你做些什么?非常感谢你,我现在就试试,并向你汇报结果。感谢上帝,我能为你做些什么?