相对路径_相对路径_相对路径

目录:

当前工作目录

绝对路径与相对路径

使用Python处理路径

文件存在性检查及类型判断

当前工作目录

首先,我们需要了解“当前工作目录(Current Working Directory, CWD)”的概念。每个程序运行时都有一个默认的工作目录,所有未明确指定完整路径的操作都将在这个目录下执行。我们可以通过Python的os模块来获取或修改当前工作目录。

import os  # 导入os模块以使用系统相关的功能

# 获取当前工作目录
current_directory = os.getcwd()
print("当前工作目录是:", current_directory)

# 假设我们要改变当前工作目录到C盘下的某个文件夹
new_working_directory = 'C:\Users\山海摸鱼人\Documents'
try:
    os.chdir(new_working_directory)
    print("工作目录已更改至:", new_working_directory)
except FileNotFoundError:
    print(f"无法找到路径: {new_working_directory}")

上面代码展示了如何查看当前工作目录以及尝试切换到新的目录。如果新目录不存在,程序会捕捉到FileNotFoundError异常并给出提示信息。

绝对路径与相对路径

接下来,让我们看看什么是绝对路径和相对路径。

当前目录与父目录示例说明

假设你的电脑上有如下结构:

C:.
└── Users
    └── 山海摸鱼人
        ├── Documents
        │   └── example.txt
        └── Downloads
            └── another_example.txt

C:Users山海摸鱼人Documentsexample.txt 是一个绝对路径。

如果当前工作目录是C:Users山海摸鱼人Downloads:

使用Python处理路径

Python提供了一个强大的os.path子模块来帮助我们更方便地处理文件路径问题。下面是一些常用的方法及其用法示例:

1、转换为绝对路径 – os.path.abspath(path)

2、检查是否为绝对路径 – os.path.isabs(path)

3、计算相对路径 – os.path.relpath(path, start)

4、获取路径的基本名 – os.path.basename(path)

5、获取路径的目录名 – os.path.dirname(path)

# 定义几个路径供演示
relative_path = '.\example.txt'  # 相对于当前目录
absolute_path = 'C:\Users\山海摸鱼人\Documents\example.txt'

# 将相对路径转为绝对路径
absolute_version = os.path.abspath(relative_path)
print("相对路径转绝对路径:", absolute_version)

# 检查给定路径是否为绝对路径
print("检查是否为绝对路径:", os.path.isabs(absolute_path))

# 计算从C盘根目录到目标文件的相对路径
relative_from_cdrive = os.path.relpath(absolute_path, 'C:\')
print("从C盘根目录到目标文件的相对路径:", relative_from_cdrive)

# 分离出文件名部分
file_name = os.path.basename(absolute_path)
print("文件名:", file_name)

# 分离出目录部分
directory = os.path.dirname(absolute_path)
print("所在目录:", directory)

这段代码演示了如何利用os.path的各种方法来操作文件路径。你可以根据自己的需要调整这些路径值。

文件存在性检查及类型判断

最后,为了安全起见,在对文件进行读写之前,通常我们会先验证文件是否存在,以及确定它是文件还是目录。

test_file = 'C:\Users\山海摸鱼人\Documents\example.txt'
test_dir = 'C:\Users\山海摸鱼人\Documents'

# 检查文件或目录是否存在
exists = os.path.exists(test_file)
print(f"{test_file} 存在吗? {'是' if exists else '否'}")

# 判断是否为文件
is_file = os.path.isfile(test_file)
print(f"{test_file} 是文件吗? {'是' if is_file else '否'}")

# 判断是否为目录
is_dir = os.path.isdir(test_dir)
print(f"{test_dir} 是目录吗? {'是' if is_dir else '否'}")

通过以上步骤,你应该掌握了基本的路径管理和文件检查技巧。

限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: lzxmw777

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注