所以我有一个python脚本my_script.py
,它在文件夹Test
内,我在这个文件夹之外。该脚本需要访问存储在文件夹my_data.dat
内的文件Test
中的某些输入数据。
现在,当我尝试使用简单的Test
从文件夹python my_script.py
外部运行此脚本时,它会尝试在我运行脚本的文件夹中找到my_data.dat
所以失败了。如何在不实际修改my_script.py中的路径的情况下告诉它使用正确的路径?
我不想修改脚本中的路径,因为脚本通常用于各种路径,整个过程将在以后自动完成。
答案 0 :(得分:1)
您需要使用绝对文件路径而不是相对文件路径。
获取包含python文件的目录的绝对路径:
import os
ROOT_DIR = os.path.dirname(__file__)
你可以获得my_data.dat
data_file_path = os.path.join(ROOT_DIR, 'my_data.dat')
之后使用data_file_path
代替"my_data.dat"
答案 1 :(得分:0)
您可以将路径my_data.dat
作为参数传递给脚本,或者(如果数据文件始终与脚本位于同一目录中),您可以使用变量__file__
来确定脚本所在的位置,并在该目录中查找数据文件。