我将我的github master分支部署到heroku上,其中一段代码尝试访问同一分支下misc目录下的文件,但是heroku上的日志显示该文件不存在,请看如下截图:
misc
kcugc4gi1#
您正在使用Windows风格的反斜杠作为路径分隔符,例如:
with open("foo\\bar.txt") as f: ...
或者这个:
with open(r"foo\bar.txt") as f: ...
反斜杠作为路径分隔符在Linux上不起作用。使用正斜杠,这在Linux和Windows上都有效:
with open("foo/bar.txt") as f: ...
更好的方法是使用pathlib连接路径段:
pathlib
import pathlib directory = pathlib.Path("foo") with open(directory / "bar.txt") as f: ...
或os.sep:
os.sep
import os with open(os.sep.join("foo", "bar.txt")) as f: ...
1条答案
按热度按时间kcugc4gi1#
您正在使用Windows风格的反斜杠作为路径分隔符,例如:
或者这个:
反斜杠作为路径分隔符在Linux上不起作用。
使用正斜杠,这在Linux和Windows上都有效:
更好的方法是使用
pathlib
连接路径段:或
os.sep
: