共计 1122 个字符,预计需要花费 3 分钟才能阅读完成。
在前面的学习中,我们已经掌握了如何打开和读写文件。然而,在实际开发中,文件路径的管理与操作也是一个非常关键的部分。今天我们将深入学习 Python 中文件路径的相关知识,重点理解相对路径与绝对路径的区别,以及如何通过 os 模块进行路径处理。
首先,我们需要了解两类路径:
-
绝对路径 :从根目录开始的完整路径,例如:
- Windows 系统:
C:\Users\admin\Desktop\data.txt - Linux/Mac 系统:
/home/user/data.txt
这种路径不会随着程序运行目录的改变而改变。
- Windows 系统:
-
相对路径 :相对于当前程序工作目录的路径。例如当前脚本所在目录下有一个
data.txt文件,我们只需写data.txt即可。若在子目录files下,则路径为files/data.txt。
在 Python 中,我们可以通过 os 模块来操作路径。常用方法如下:
import os
# 获取当前工作目录
print(" 当前工作目录:", os.getcwd())
# 拼接路径
file_path = os.path.join(os.getcwd(), "data.txt")
print(" 拼接后的路径:", file_path)
# 获取文件所在目录
print(" 目录部分:", os.path.dirname(file_path))
# 获取文件名
print(" 文件名部分:", os.path.basename(file_path))
# 判断路径是否存在
print(" 路径是否存在:", os.path.exists(file_path))
# 判断是否为文件或文件夹
print(" 是否为文件:", os.path.isfile(file_path))
print(" 是否为文件夹:", os.path.isdir(os.getcwd()))
以上代码展示了路径拼接、目录与文件名的获取、路径存在性判断等常用功能。
此外,Python 提供了 os.path.abspath() 获取绝对路径,os.path.relpath() 获取相对路径的方法。例如:
print(" 绝对路径:", os.path.abspath("data.txt"))
print(" 相对路径:", os.path.relpath("C:/Users/admin/Desktop/data.txt"))
掌握路径操作有助于提高程序的跨平台性和灵活性,避免硬编码路径带来的错误。
思考与练习:
- 编写一个程序,读取与脚本位于同一目录下的
config.txt文件内容。 - 尝试用
os.path.join()拼接路径,实现跨平台文件访问。 - 修改程序,让其在检测到文件不存在时自动创建一个新文件。
这样,你就能够更好地管理和操作文件路径了,为后续文件批量处理和复杂项目开发打下基础。
正文完