我正在尝试构建一个函数,要求用户输入文件名,打开文件,读取其内容,在屏幕上打印文件内容,然后关闭文件。如果不存在这样的文件,那么如果脚本崩溃就可以了。当我运行该函数时,它给了我:NameError:名称'myInput'未定义,我不知道如何解决它。
这是我到目前为止所做的:
print(input('Please enter the name of a file that you want to open.' + myInput))
with open(r"C:\Python32\getty.txt", 'r') as infile:
data = infile.read()
print(data)
如果可以帮助..
答案 0 :(得分:3)
myInput
是一个未定义的变量,我无法通过使用它来了解您的想法。
也许你在哪里展示代码......:
print(input('Please enter the name of a file that you want to open.' + myInput))
with open(r"C:\Python32\getty.txt", 'r') as infile:
你实际上意味着一些非常不同的东西,例如...:
myInput = input('Please enter the name of a file that you want to open.')
with open(myInput, 'r') as infile:
...
答案 1 :(得分:1)
在第一行中,您有:
print(input('Please enter the name of a file that you want to open.' + myInput))
你有myInput
定义了吗?你需要定义它。如果您没有在该行之前定义它,则您的脚本将崩溃。
这可以从您的有用错误消息中收集:
NameError:名称'myInput'未定义
这意味着变量myInput
未定义,因此编译器不知道放在那里的内容。
答案 2 :(得分:0)
我认为这样的事情可以解决你的问题
fileName = raw_input("Please enter the name of a file that you want to open. ")
fileObject = open(fileName, "r")
fileText = fileObject.read()
print(fileText)