我有一些代码如下:
while line != '' and line != 'STOP ME':
line = raw_input("")
buf.append(line+'\n')
sys.stdin.flush()
print raw_input("Input1:")
print raw_input("Input2:")
问题是,如果用户像这样复制并粘贴数据
1行
LINE2
停止我
“空行”
“空行”
一些垃圾文本
在“STOP ME”之后,我的raw_input将被垃圾文本溢出。有没有办法避免它?
答案 0 :(得分:1)
你可能不需要raw_input
吗?您可以使用sys.stdin
类文件对象。例如sys.stdin.read
方法。
或者你可以使用这样的东西:
buf.append(line.split('STOP ME\n', 1)[0]+'\n')
在STOP ME
行之前获取数据。