尝试使用systemd服务访问以下目录中的CSV文件:/path/to/cwd/data/x.csv
当前,使用path = '/path/to/cwd/data/x.csv'
在CWD中的python文件中对路径进行硬编码可以使服务找到文件而不会出现问题。
但是,如果我尝试像这样使用pathlib:
from pathlib import Path
path = Path.cwd() / 'data' / 'x.csv'
该服务给我一个错误:
FileNotFoundError:[错误2]没有这样的文件或目录:'/data/x.csv'
当我尝试使用OS库执行
path = os.path.join(os.getcwd(), 'data/x.csv')
时出现相同的错误我不知道发生了什么,当我比较pathlib和os生成的路径的输出时,它们与我键入的内容完全相同,但是它们不起作用,而硬编码的路径可以。
最佳答案
您可以尝试在服务中指定cwd。
[服务]
WorkingDirectory = / PathToCwd
然后再次运行。
关于python - Pathlib在Ubuntu上找不到文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59324129/