如何向Path对象追加字符串?解决Path访问子目录报错问题
如何正确向Path对象追加子目录?
嘿,这个问题我之前也踩过坑!Pathlib模块的Path对象不能直接和字符串用+运算符拼接,这就是你看到TypeError的原因——两种类型不支持这种操作。不过Pathlib提供了更优雅的方式来处理子目录,给你推荐几种常用方法:
使用
/运算符(推荐)
Pathlib重载了/运算符,专门用来拼接路径,而且会自动适配不同操作系统的路径分隔符(Windows用\,Linux/macOS用/),跨平台更省心。代码示例:from pathlib import Path Desktop = Path('Desktop') SubDeskTop = Desktop / "subdir" # 还可以多层级拼接 SubSubDeskTop = Desktop / "subdir" / "subsubdir"使用
joinpath()方法
如果你需要一次性拼接多个子目录部分,joinpath()会更方便,它接受任意数量的字符串参数:from pathlib import Path Desktop = Path('Desktop') SubDeskTop = Desktop.joinpath("subdir") # 拼接多个层级 SubSubDeskTop = Desktop.joinpath("subdir", "subsubdir", "deepdir")
另外,如果你需要获取这个子目录的绝对路径,可以在最后调用absolute()或者resolve()方法,比如:
SubDeskTop_abs = (Desktop / "subdir").absolute()
内容的提问来源于stack exchange,提问作者Ray Salemi
相关产品推荐
相关产品推荐

