Python 绝对路径改成相对路径

整体流程

下面是将 Python 绝对路径转换为相对路径的步骤:

步骤 描述
1 获取当前脚本的绝对路径
2 获取当前工作目录的绝对路径
3 使用相对路径计算出目标文件的路径
4 使用目标文件的相对路径进行操作

具体步骤及代码

步骤 1:获取当前脚本的绝对路径

在 Python 中,可以使用 __file__ 来获取当前脚本的绝对路径。这个变量即为运行脚本的文件名。

import os

# 获取当前脚本的绝对路径
script_path = os.path.abspath(__file__)
print(f"当前脚本的绝对路径:{script_path}")

步骤 2:获取当前工作目录的绝对路径

使用 os.getcwd() 函数可以获取当前工作目录的绝对路径。

import os

# 获取当前工作目录的绝对路径
current_dir = os.getcwd()
print(f"当前工作目录的绝对路径:{current_dir}")

步骤 3:使用相对路径计算出目标文件的路径

相对路径是相对于当前工作目录的路径。通过将当前脚本的绝对路径和目标文件的相对路径进行拼接计算,可以得到目标文件的绝对路径。

import os

# 获取当前脚本的绝对路径
script_path = os.path.abspath(__file__)

# 目标文件的相对路径
relative_path = "../data/file.txt"

# 计算目标文件的绝对路径
target_path = os.path.join(os.path.dirname(script_path), relative_path)
print(f"目标文件的绝对路径:{target_path}")

步骤 4:使用目标文件的相对路径进行操作

现在,可以使用目标文件的相对路径 ../data/file.txt 进行操作了。比如打开文件、读取内容等。

import os

# 获取当前脚本的绝对路径
script_path = os.path.abspath(__file__)

# 目标文件的相对路径
relative_path = "../data/file.txt"

# 计算目标文件的绝对路径
target_path = os.path.join(os.path.dirname(script_path), relative_path)

# 打开文件并读取内容
with open(target_path, 'r') as file:
    content = file.read()

print(content)

通过以上步骤,你就可以将 Python 绝对路径转换为相对路径,并对目标文件进行操作了。

希望这篇文章对你有所帮助!