python读取其他文件夹的内容(利用相对路径,保证兼容linux和win系统)或者 导入py文件

1、python读取其他文件夹下的内容

(1)如果当下的 .py的工作环境 存在 该文件夹(包含子文件夹),则直接使用

path = './test/1.txt'

(2)如果当下的 .py的工作环境 不存在 该文件夹,则考虑用返回上一级目录 再加上 对应的目录

# 这里os.path.dirname(__file__), '..')的作用是返回上一级目录
root_directory = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))

通过逐步返回上一级目录,再通过 相加 的形式获取目标文件

target_path = os.path.normpath(root_directory + '/test/1.txt')            # 格式化目标路径    

2、导入py文件

(1)如果当下的 .py的工作环境 存在 要调用的py文件,则直接使用

from txt_read import txt_read

# 第一个txt_read 是 要调用的 py文件 的名字

# 第二个txt_read 是 py文件内的方法

(2)如果要调用的py文件 在 当下的 .py的工作环境 的某个文件夹内 ,使用

from utils.txt_read import txt_read

#  utils 是 要调用的py文件所在的文件夹

# 第一个txt_read 是 要调用的py文件的名字

# 第二个txt_read 是 py文件内的方法

(3)如果要调用的py文件 在其他文件夹内 ,使用sys.path.append(path)加入到工作环境。

sys.path.append(path)  

如:path = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')       
    sys.path.append(path) # 将上一级目录加入到当下py的工作环境中,再用前面(1)或者(2)的方法

你可能感兴趣的:(python,开发语言)