【发布时间】:2020-05-05 13:04:47
【问题描述】:
我一直在尝试用新的 pathlib 模块替换 os.path。在这些行中,os.path 每次都可以正常工作,而 Pathlib 模块会带来错误:
Path' and 'str'
[!] send_logs // Error.. ~ unsupported operand type(s) for +: 'PosixPath' and 'str'
这样做的主要目的是将文件写入该文件夹;使用 Path.is_dir(log_dir) 返回 True。通过 pathlib 模块尝试此操作会带来错误。我试图找到其他来源以获得答案,并将 PosixPath 作为一个单独的变量用于 expanduser;我被带到这里无济于事
对不起,我是新手,这是我的第一个“项目”之一!非常感谢所有帮助。我也遇到过类似的问题,但他们的目标是找到主目录,即 Path.owner(Path.home())
#log_dir = os.path.expanduser('~') + '/Downloads/' --- commented out for pathlib/path
p = PosixPath('~' + '/Downloads/')
log_dir = Path.expanduser(Path(p))
感谢您提供的帮助。设法让它与单行一起工作:以与 os.path.expanduser() 相同的方式
log_dir = str(PosixPath('~' + '/Downloads/').expanduser())
【问题讨论】:
标签: python-3.x path operating-system os.path pathlib