获取目录
工作目录
os.getcwd()
获取的是当前工作目录(Current Working Directory,CWD)。
假设你有一个脚本 my_script.py
放在 /home/user/scripts
目录下.
你可以在不同的目录中运行这个脚本,比如从 /home/user
目录或者 /home/user/projects
目录运行:
1 | # 从 /home/user 目录运行脚本 |
在这两种情况下,my_script.py
中的 os.getcwd()
将返回不同的路径:
- 在第一种情况下,
os.getcwd()
将返回/home/user
。 - 在第二种情况下,
os.getcwd()
将返回/home/user/projects
。
当前脚本所在目录
1 | import os |
上级目录
要获取当前脚本所在目录的上级目录,可以在获取当前脚本目录后,再使用路径操作函数来获取上级目录。以下是几种常见的方法:
方法 1: 使用 os
模块
1 | import os |
方法 2: 使用 pathlib
模块
1 | from pathlib import Path |
注意script_path.parent
是pathlib.Path
对象,而不是普通的字符串。
如果你想将 Path
对象与其他字符串拼接,需要先将 Path
对象转换为字符串。
你可以使用 str()
函数来进行转换。
1 | script_path = Path(__file__).resolve() |
路径拼接
路径拼接不要自己用斜杠拼接,在不同的系统上会有兼容性问题。
os.path
1 | script_path = Path(__file__).resolve() |
pathlib
pathlib
提供了更简洁的方式来拼接多个路径段,使用 /
运算符:
1 | from pathlib import Path |
这里的full_path
是对象
1 | full_path_str = str(full_path) |
创建文件夹
1 | output_directory = r"D:\test" |
常见的系统目录
在 Python 中,你可以使用 os
模块和 pathlib
模块来获取系统的常用目录。
这些模块提供了访问文件系统路径的便捷方法。
以下是一些常见的系统目录及其获取方法:
获取当前工作目录
1 | import os |
获取用户的主目录
1 | import os |
获取临时目录
1 | import tempfile |
获取系统的配置文件目录
在 Linux 和 macOS 上,配置文件通常存储在 ~/.config
目录下。在 Windows 上,配置文件通常存储在 C:\Users\<用户名>\AppData\Roaming
目录下。
1 | import os |
获取系统的桌面目录
1 | import os |
获取系统的文档目录
1 | import os |
获取系统的下载目录
1 | import os |
获取系统的应用程序目录
在 macOS 上,应用程序通常存储在 /Applications
目录下。
在 Windows 上,应用程序通常存储在 C:\Program Files
或 C:\Program Files (x86)
目录下。
1 | import os |
使用 pathlib
模块获取
pathlib
是 Python 3.4 引入的一个模块,提供了面向对象的路径操作方式。
1 | from pathlib import Path |
总结
通过 os
模块和 pathlib
模块,你可以方便地获取系统的常用目录。根据操作系统的不同,路径可能会有所不同,因此在编写跨平台代码时,建议使用 platform
模块来区分不同的操作系统。