关于python路径(获取当前路径、上级路径、相对/绝对路径)

流过昼夜 提交于 2020-04-01 01:46:34

对路径问题好像一直有个坑,这次记录下,希望可以帮到像我一样在路径问题徘徊的小伙伴

获取路径

写代码时,路径是从文件下复制到的目录路径,如何判断路径对不对(换而言之就是获取当前路径或上级目录路径),如下:

方法一

import os,sys
print(os.path.abspath('main.py'))#获取当前路径

输出:

C:\Users\haha\bs\Feature_extraction&construction\main.py

方法二
import os
path1=os.path.abspath('.') #表示当前所处的文件夹的绝对路径
path2=os.path.abspath('..') #表示当前所处的文件夹上一级文件夹的绝对路径
print(path1)
print(path2)

输出:

C:\Users\haha\bs\Feature_extraction&construction
C:\Users\haha\bs

引入路径

在给变量赋值路径时,要注意斜杠在python的字符串中有转义的作用,例如下面写:

path='C:\Users\haha\bs\Datacastle_subsidy'

会报错提示如图:

这就是因为没有注意斜杆的问题。解决:在路径前面加一个r,这样:path=r'C:\Users\haha\bs\Datacastle_subsidy'或写成双斜杆\\相对路径和绝对路径
相对路径和绝对路径定义是什么,想必大家都知道了。那我这里就直接举一个路径例子

 

这里open('路径'),打开文件,是绝对路径(表示该文件在当前目录上级目录下文件),如果换做

            open('sorce.txt')也是绝对路径(该文件和当前文件在同级目录下)

            open('C:\Users\haha\bs\Feature_extraction&construction\score_input\score_train_feature.csv')就是相对路径

相对指的就是相对于当前文件夹路径,也就是你编写的这个.py文件所放的文件夹路径。

 依次打开的路径分别如下:

             C:\Users\haha\bs\Feature_extraction&construction\sorce.txt

             C:\Users\haha\bs\Datacastle_subsidy\train\subsidy.txt

             C:\Users\haha\bs\Feature_extraction&construction\score_input\score_train_feature.csv

(取得名称有丢丢复杂,看的时候把它看成一个字母就好了)

看到这里不知道你发现没有,绝对路径和相对路径斜杠不一样,有一个是反斜杠。注: 常用’/‘来表示相对路径,’\‘来表示绝对路径

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!