如何在 Python 的不同平台上创建相同的目录路径?

Posted

技术标签:

【中文标题】如何在 Python 的不同平台上创建相同的目录路径?【英文标题】:How to create same path to directory on different platforms in Python? 【发布时间】:2019-12-29 07:20:40 【问题描述】:

在我的一段代码中,有很多情况下我有以下行

'/home/myname/directory'

例如,我有以下几行代码

filepath = os.listdir('/home/myname/directory')

for content in filepath

   # do something

在项目的下一部分,我必须与其他人共享代码。我知道这个人运行 openSUSE。如果我希望代码创建与我的目录路径相同的特定目录,我需要包含什么?

我知道它会涉及操作系统模块,但我不确定要使用哪些功能和方法。

【问题讨论】:

当你说,“我希望代码创建与我的目录路径相同的特定目录”,你的意思是你想创建/home/jm9/my_app(其中myname=jm9directory=my_app) 在你的机器和你朋友的机器上。那是对的吗?如果不是,请准确解释您的意思。 另见Python path.join behavior is different when run in Mac vs Windows、Cross-platform Desktop directory path?、Platform-independent file paths?、constructing absolute path with os.path.join()、Unix paths that work for any platform in Python?、Platform independent path concatenation using “/” , “\”?等 感谢您的回复和编辑。这基本上就是我想要的。 How can I safely create a nested directory?、How can I create directories recursively?、How to create directories and sub directories efficiently and elegantly in Python、mkdir -p functionality in Python 等可能重复 【参考方案1】:

您的代码可以检查目录是否存在,如果找不到则创建它:

if not os.path.exists("/home/myname/directory"):
    os.makedirs("/home/myname/directory")
    # do something

【讨论】:

以上是关于如何在 Python 的不同平台上创建相同的目录路径?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Java 和 Python 之间创建 2 路通信

PyQt5调整应用程序以适应不同的显示

如何确保跨平台的浮点大小相同?

如何读取刚刚由python中的函数创建的文件

python多线程代码相同,在不同电脑上实现不了

如何在 Linux 平台上创建用于用 C++ 编写的临时文件?