0

我有一些代码如下所示:

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行

线2

阻止我

“空行”

“空行”

一些垃圾文字

在“停止我”之后,我的 raw_input 将被垃圾文本溢出。有没有办法避免它?

4

1 回答 1

1

可能你不需要raw_input这里?您可以使用sys.stdin类似文件的对象。例如sys.stdin.read方法。

或者你可以使用这样的东西:

buf.append(line.split('STOP ME\n', 1)[0]+'\n')

在行前获取数据STOP ME

于 2011-11-28T07:54:16.347 回答