[英]How to open and write a file into an existing directory
我们是python的新手,正在尝试写入现有目录cyt_dir
的新文件
outfile = open('cyt_dir/' +s+ ".html", "w")
但是我们越来越
IOerror [ERRno2]没有这样的文件或目录:'cyt_dir /
为什么无法识别目录?
您编写的代码没有问题。
>>> s = "face"
>>> f = open('cyt_dir/' +s+ ".html", "w")
>>> f.write("testy testerson")
>>> f.close()
这将成功写入正确的目录。 您遇到的错误是IOerror,因此建议此处还有其他问题。
综观上的ioerror文档python.org我们可以看到一些原因,为什么这可能会弹出。 No such file or directory
向我建议一些不同的东西。
Errno
会证明这一点) 总而言之,这仅仅是猜测。 如果捕获到该错误,则可能能够从该错误中获取更多信息:
try:
f = open('cyt_dir/' +s+ ".html", "w")
except IOError, e:
print "Not allowed", e
这很可能是当前路径问题,您需要知道从哪里执行脚本。 或者,可以选择提供绝对路径,而不是相对cyt_dir
。
我将选择第三个变体,并编写一种从脚本位置提取路径的机制,因此无论什么情况,您始终是安全的:
path = os.path.dirname(os.path.abspath(__file__))
try:
outfile = open("%s/cyt_dir/%s.html".format(path, s), "w")
except IOError as e:
print "I/O error({0}): {1}".format(e.errno, e.strerror)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.