gpt4 book ai didi

Python - 任何将相对路径转换为绝对路径的方法?

转载 作者:太空宇宙 更新时间:2023-11-03 12:41:43 31 4
gpt4 key购买 nike

current_working_directory = os.getcwd()
relative_directory_of_interest = os.path.join(current_working_directory,"../code/framework/zwave/metadata/")

files = [f for f in os.listdir(relative_directory_of_interest) if os.path.isfile(os.path.join(relative_directory_of_interest,f))]

for f in files:
print(os.path.join(relative_directory_of_interest,f))

输出:

/Users/2Gig/Development/feature_dev/scripts/../code/framework/zwave/metadata/bar.xml
/Users/2Gig/Development/feature_dev/scripts/../code/framework/zwave/metadata/baz.xml
/Users/2Gig/Development/feature_dev/scripts/../code/framework/zwave/metadata/foo.xml

这些文件路径工作正常,但我的一部分希望看到这些是绝对路径(没有任何 ../- 我不知道我为什么关心,也许我是强制症。我想我也发现它更容易记录以查看绝对路径。标准 python 库(我在 3.2 上)是否内置了一些东西可以将它们变成绝对路径?如果没有也没什么大不了的,但是稍微谷歌一下只会找到第三方解决方案。

编辑:看起来像我想要的 os.path.abspath(file)) 所以修改后的源代码现在看起来像(不是我没有测试这个,它只是即兴的):

current_working_directory = os.getcwd()
relative_directory_of_interest = os.path.join(current_working_directory,"../code/framework/zwave/metadata/")

files = [f for f in os.listdir(relative_directory_of_interest) if os.path.isfile(os.path.join(relative_directory_of_interest,f))]

for f in files:
print(os.path.abspath(f))

输出:

/Users/2Gig/Development/feature_dev/scripts/ZWave_custom_cmd_classes (08262010).xml/Users/2Gig/Development/feature_dev/scripts/ZWave_custom_cmd_classes (09262010).xml/Users/2Gig/Development/feature_dev/scripts/ZWave_custom_cmd_classes (09262011).xml

最佳答案

请注意,您的路径已经是绝对路径——它们以/ 开头。不过,它们不是规范化,这可以通过 os.path.normpath() 来完成。 .

关于Python - 任何将相对路径转换为绝对路径的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9372062/

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