python使用相对定位,绝对定位,选取同级别文件下的指定文件(csv,excel)
最近使用python读取同级下的data数据文件,开始找了很多方法。下面我总结成二种方法:
1.xxx.py想要打开.data.csv,使用相对路径,有如下方法:
思路:
xxx.py想要打开的是mp_data文件夹下的data.csv文件,xxx.py是在lib文件夹下面,俩者是同级文件下的文件,银川操作就是在当前目录,向上搜索,银川就可以很容易理解下面的意思了。
思路:首先定位到上级目录,在上级目录下找mp_data文件夹,下的data.csv文件
with open(r"..\mp_data\data_csv.csv","r") as file:
print(file.read())
还有一种:如果想要使用绝对路径就更简单了:
xxx.py打开mp_data文件下的data.csv文件,我们可以使用os库,定位到获取到xxx.py的上级路径,然后通过组合的方式,定位到我们想要打开的mp_data文件夹下的data.csv文件
可以分为二个部分,第一部分,使用os.path.abspath('..')获取上一层的路径,再使用os.path.join(路径,path1)进行俩个路径的自动合并,去获取到完整的路径,也是可行的
最后就可以读取到想要取的文件。
#获取上一层路径
path = os.path.abspath('..')
#从当前路径读取上一层路径csv文件
filename = os.path.join(path,'mp_data\data_csv.csv')
print(filename)
到这里就可以拿到想要路径下面的数据文件了。