gpt4 book ai didi

python - os.path.join 似乎对打开斜杠很敏感,为什么?

转载 作者:行者123 更新时间:2023-12-01 08:02:02 25 4
gpt4 key购买 nike

在 os.join 中的文档中添加斜杠会产生不同的结果,而我认为不应该这样做。为什么?

只是尝试编写为多个用户做合理事情的代码。

import os
# Initialize output files and folders, following principle of separating code from data
homeDir = os.path.expanduser('~')
targetDir = os.path.join(homeDir, '/Documents/Jeopardy/output')
print(targetDir)
# produces /Documents/Jeopardy/output which is not expected
targetDir = os.path.join(homeDir, 'Documents/Jeopardy/output')
print(targetDir)
# produces /home/max/Documents/Jeopardy/output which is expected

我预计两个连接都会产生 /home/max/Documents/Jeopardy/输出但第一个没有。我一定不理解连接文档,但我不明白为什么我得到不同的输出。提前致谢

最佳答案

来自 join() docstring :

If a component is an absolute path, all previous components are thrown away and joining continues from the absolute path component.

'/Documents/Jeopardy/output' 是绝对路径,因此第一部分被丢弃。

从行为上来说,使用相对路径而不是绝对路径可以说更有意义;在绝对路径前面添加任何内容并没有多大意义,因为它已经从 FS 根目录开始。

关于python - os.path.join 似乎对打开斜杠很敏感,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55693593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com