gpt4 book ai didi

python - 使用 os.path.isdir() 时 './' 和 '../' 有什么区别?

转载 作者:太空狗 更新时间:2023-10-29 21:36:16 27 4
gpt4 key购买 nike

我是 python 的新手。今天有件事让我感到困惑。在c:\python\路径下,有好几折。我在这个路径下编辑了一个python脚本,运行代码:

for dir_name in os.listdir("./"):
print dir_name
print os.path.isdir(dir_name)

它打印:

Daily
True
renafile.py
False
script
True

但是当我将脚本放在 C:\python\ 路径下的 fold Daily 中并运行代码时:

for dir_name in os.listdir("../"):
print dir_name
print os.path.isdir(dir_name)

它打印:

Daily
False
renafile.py
False
script
False

他们有区别吗?

最佳答案

返回 false 是因为当您使用文件夹名称调用 isdir 时,python 会在当前目录中查找该文件夹 - 除非您提供绝对路径或相对路径。

由于您在 "../" 中列出文件,因此您应该这样调用 isdir:

print os.path.isdir(os.path.join("../", dir_name))

您可能希望将代码修改为:

list_dir_name = "../"
for dir_name in os.listdir(list_dir_name):
print dir_name
print os.path.isdir(os.path.join(list_dir_name, dir_name))

关于python - 使用 os.path.isdir() 时 './' 和 '../' 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42969616/

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