python生成相对于入口文件所在目录的绝对路径
在VSCODE中, 如果打开多个python文件夹, 则在执行python文件时, 有时候当前工作目录会切换到其他文件夹, 导致保存和读取文件报错. 这时候可以生成文件的绝对路径, 就可以避归这个问题.
下面是生成绝对路径的代码:
import os
import __main__
def AbsPath(fileName:str)->str:
'''返回文件的全路径'''
if os.path.isabs(fileName): return fileName # 如果已经是绝对路径了, 则直接返回
entryPath = os.path.dirname(__main__.__file__) # 获取入口文件所在目录
return os.path.join(entryPath,fileName) # 拼接得到绝对路径