我想创建(如果存在,则打开(,带有Python的文件,python,带有路径/ETC/yate/input.txt。这是我的代码:
try:
file = open("input.txt", "wb")
except IOError:
print "Error"
with file:
doSomething()
我收到"错误"消息
我该如何修复?
您可以导入OS.Path,然后检查文件是否存在。这也许也可能已经在这里回答,如何使用Python检查文件是否存在?
代码:
import os.path
现在,检查文件路径中是否存在该文件名:
file_exists = os.path.isfile(/etc/yate/input.txt)
if file_exists:
do_something
或,如果您想做某件事,例如不存在文件,例如创建和打开文件:
if not file_exists:
do_something_else
更新:在我提供的链接中,还有其他方法可以做到这一点,例如使用pathlib而不是OS.Path。
您可以在open()
中提供完整的路径,而不仅仅是文件名:
file = open("/etc/yate/input.txt", "wb")
完整代码:
try:
file = open("/etc/yate/input.txt", "wb")
except IOError:
print "Error"
else:
dosomething()
finally:
file.close()
但是,由于with
充当上下文管理器,因此您可以使用with
的功率使代码更短。
代码:
try:
with open("input.txt", "wb") as file:
dosomething()
except IOError:
print "Error"