gpt4 book ai didi

python - 如何删除 EOFError : EOF when reading a line?

转载 作者:太空狗 更新时间:2023-10-30 01:47:55 27 4
gpt4 key购买 nike

基本上,我必须检查特定模式是否出现在一行中。如果是,我必须打印该行,否则不打印。所以这是我的代码:

p = input()
while 1:
line = input()
a=line.find(p)
if a!=-1:
print(line)
if line=='':
break

此代码似乎不错,并被接受为正确答案。但有一个陷阱。我收到运行时错误 EOFError: EOF 在读取代码测试网站忽略的行时。

我有三个问题:1)为什么它被忽视了?2)如何删除它?3)有没有更好的方法解决问题?

最佳答案

什么都不会被忽视。根据 documentation input 在遇到文件结束条件时引发 EOFError。本质上,input 让您知道我们已经完成了,没有什么可读的了。你应该等待这个异常,当你得到它时,只需从你的函数返回或终止程序。

def process_input():
p = input()
while True:
try:
line = input()
except EOFError:
return
a = line.find(p)
if a != -1:
print(line)
if line=='':
return

关于python - 如何删除 EOFError : EOF when reading a line?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42891603/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com