0
info = []
file = input("Enter a file ")

try:
    infile = open(file, 'r')

except IOError:
    print("Error: file" ,file, "could not be opened.")

如果用户输入文件为 filetest.txt,
这是我的代码。我希望它打印错误:文件“filetest.txt”无法打开。谢谢您的帮助。

4

3 回答 3

6

这有效:

print('Error: file "{}" could not be opened.'.format(file))

请看下面的演示:

>>> file = "filetest.txt"
>>> print('Error: file "{}" could not be opened.'.format(file))
Error: file "filetest.txt" could not be opened.
>>>

在 Python 中,单引号可以包含双引号,反之亦然。另外,这里是关于str.format.


最后,我想将open默认值添加到阅读模式。所以,你实际上可以这样做:

infile = open(file)

但是,有些人喜欢明确地放置'r',所以这个选择取决于你。

于 2013-11-15T01:21:22.587 回答
2
print("Error: file \"{}\" could not be opened.".format(file))

但是要小心,这file是 python 中的内置类型。按照惯例,你的变量应该被命名file_

于 2013-11-15T01:20:59.607 回答
1

用反斜杠转义引号

myFile = "myfile.txt"
print("Error: file \"" + myFile + "\" could not be opened.")

印刷:

Error: file "myfile.txt" could not be opened.
于 2013-11-15T01:21:33.400 回答