1、获取当前文件的绝对路径
import os
cur_path = os.path.abspath(__file__)
print(cur_path)
输出:E:\python\project\test\path_test.py
2、获取当前文件的所在目录
import os
cur_dir = os.path.dirname(os.path.abspath(__file__)) # 上级目录
print(cur_dir)
输出:E:\python\project\test
3、获取当前文件所在目录的上一级目录
import os
cur_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 上级目录
print(cur_dir)
输出:E:\python\project
4、获取指定文件的路径(例如想获得project文件夹下的test.txt文件路径)
import os
# 法一
cur_dir1 = os.path.dirname(os.path.abspath(__file__))
path1 = os.path.join(os.path.abspath(cur_dir + os.path.sep + ".."), "test.txt")
# 法二
cur_dir2 = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
path2 = os.path.join(os.path.dirname(cur_dir), "test.txt")
print(path1)
print(path2)
输出:
E:\python\project\test.txt
E:\python\project\test.txt
注意:
只有当在脚本中执行的时候,os.path.abspath(file)才会起作用,因为该命令是获取的当前执行脚本的完整路径,如果在交互模式或者terminate 终端中运行会报没有__file__这个错误。