Python 如何循环并显示错误消息,直到可以打开输入文件

Python 如何循环并显示错误消息,直到可以打开输入文件,python,file-io,Python,File Io,我需要定义一个名为open\u file(prompt\u str)的函数。此函数接收一个字符串,该字符串是提示用户输入文件名时显示的消息。程序将尝试打开该文件。如果无法打开文件,则应显示错误消息。此函数将循环,直到收到正确的输入并成功打开文件。它返回一个文件指针 fp = open(filename, "r ") 对于这个家庭作业,我得到了已经定义的变量选项 代码: 此函数接收一个字符串,该字符串是提示用户输入文件名时要显示的消息 这是您希望传递给输入的内容,而不是选项。注意:选项在代码中未

我需要定义一个名为
open\u file(prompt\u str)
的函数。此函数接收一个字符串,该字符串是提示用户输入文件名时显示的消息。程序将尝试打开该文件。如果无法打开文件,则应显示错误消息。此函数将循环,直到收到正确的输入并成功打开文件。它返回一个文件指针

fp = open(filename, "r ")
对于这个家庭作业,我得到了已经定义的变量
选项

代码:

此函数接收一个字符串,该字符串是提示用户输入文件名时要显示的消息

这是您希望传递给输入的内容,而不是选项。注意:
选项
在代码中未定义

此函数将循环,直到收到正确的输入并成功打开文件

你错过了一个循环

它返回一个文件指针

您需要将pass替换为return语句


比如说

def open_file(prompt_str):
    while True:
        filename = input(prompt_str)
        try:
            return open(filename)
        except IOError:
            print(filename + " doesn't exist")

你能展示一下你到目前为止做了什么吗?我已经用我到目前为止所用的代码更新了这个问题的链接。一般来说,看看@eyllanesc如何将你的图像转换成文本,并将其插入到你的问题中(尽管他在最后漏掉了几行——可能是因为它们没有做什么)。
def open_file(prompt_str):
    while True:
        filename = input(prompt_str)
        try:
            return open(filename)
        except IOError:
            print(filename + " doesn't exist")