问题
- 我在文件夹a的readTool.py中有一个readtxt(路径(函数
# inside a .py file in Folder A
def readtxt(path):
flat_matrix = np.loadtxt(path, skiprows=0, comments='#')
return flat_matrix
- 我在文件夹B中使用此函数,并使用相对路径(路径基于文件夹B(
# run from Folder B
matrix1 = readtxt(a_relative_path_in_B)
- 但是readtxt函数读取的文件具有基于文件夹a的相对路径
问题
- 那么,如果我决定给readtxt(路径(函数一个相对路径,我该如何避免这种误解呢
Python总是使用相对于运行的脚本位置的文件夹,因此您会遇到正常行为。为了避免这些问题,最容易使用绝对路径,这些路径可以在从不同文件夹运行的脚本之间通用:
import os
working_dir = os.getcwd()
absolute_path = os.path.join(working_dir, "a_relative_path_in_B")
matrix1 = readtxt(absolute_path)