【问题标题】:Pathlib can't find a file on UbuntuPathlib 在 Ubuntu 上找不到文件
【发布时间】:2019-12-13 14:04:17
【问题描述】:

尝试使用 systemd 服务访问以下目录中的 CSV 文件:/path/to/cwd/data/x.csv

目前,在我的 CWD 中使用 path = '/path/to/cwd/data/x.csv' 对 python 文件中的路径进行硬编码允许服务毫无问题地找到文件。

但是,如果我尝试像这样使用 pathlib:

from pathlib import Path
path = Path.cwd() / 'data' / 'x.csv'

服务给我一个错误: FileNotFoundError: [Errno 2] 没有这样的文件或目录:'/data/x.csv'

当我尝试使用 OS 库执行 path = os.path.join(os.getcwd(), 'data/x.csv') 时遇到同样的错误

我不知道发生了什么,当我比较 pathlib 和 os 生成的路径的输出时,它们与我输入的内容完全相同,但它们不起作用,而硬编码的路径可以。

【问题讨论】:

  • 这是 Python 2 还是 3?更重要的是,您如何尝试打开 csv 文件?打开 csv 的代码可能与 pathlib 不兼容。

标签: python ubuntu pathlib


【解决方案1】:

您可以尝试在服务内部指定 cwd。

[服务]
WorkingDirectory=/PathToCwd

然后再次运行。

【讨论】:

    猜你喜欢
    • 2021-08-11
    • 1970-01-01
    • 1970-01-01
    • 2019-11-29
    • 1970-01-01
    • 1970-01-01
    • 2011-08-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多