author="jolting"
date="2018-03-23"
python os.path模块主要用于文件的属性获取,在编程中经常用到,看许多框架中都有这个,有几次看到这个,但是不知道怎么用,总感觉很神秘,这几天有项目需要测试,然后看了开发的代码,其中又有这个os.path这个,觉得嗯,真的有必要好好的了解下.看了几个常用的,这里整理了一下笔记。也算是自己学习的成果物吧,
大概列一下今天我学习的,可能比较常用的 1)os.path.abspath()
2)os.path.dirname()
3)os.path.join()
4)os.path.exists()
5)os.path.basename()
6)os.path.split()
前四个方法在我写的代码里面有体现,用到了,后两个简单的说一下用法
1.os.path.abspath(path)
用法:返回当前代码文件的绝对路径
返回值类型:str
注意:这个方法只能在代码里面使用,在终端使用会报错
图1:os.path.abspath() 图1代码执行结果2.os.path.dirname(path)
用法:返回当前文件的根目录路径
返回值类型:str
图2:os.path.dirname() 图2执行结果Tip:一般os.path.abspath和os.path.dirname()搭配使用,如上述代码 首先得到我当前代码文件的绝对路径,再返回代码文件路径得到根目录路径
3.os.path.join(path)
用法:拼接路径
#join就是将当前想要拼接的路径进行组合 #join仅仅是连接目录的作用,不能生成目录
返回值:拼接后路径
返回值类型:str
当前使用场景:代码需要读取配置文件夹的表格,如果表格替换或者文件夹位置变化,只需要更改配置就可以,所以目前将所需要读取的文件位置进行拼接,然后访问
想法:创建一个位于该项目下的文件夹,专门用于存储表格,然后将路径拼接,之后访问路径中表格,进行处理 。
本次是将文件夹建立在performer的上级目录下,如图3展示的目录结构所示。
图3因此用到了os.path.dirname(),刚开始学习,多运用还是比较好的。
具体看代码喽
图4:os.path.join()进行分析的话如下:(可能是多余的,毕竟你们都是高颜值高智商~)
将当前文件的根目录路径与data_root, file_name进行拼接
1.获取当前文件的根目录路径 = os.path.dirname(os.path.abspath(__file__))
2.使用os.path.join()方法进行拼接即最后的:
file_path=os.path.join(os.path.dirname(os.path.abspath(__file__)), data_root, file_name) file_name #表格名称
tip:这两个当做参数传入os.path.join()是为了避免文件夹位置或者表格名更改引起代码的改动 打印出来就是如下图所展示的:根据返回的路径还要判断一下是否真的存在,万一粗心大意的没有给data_root下放表格,是不是就需要进行后面的操作了,所以运用了os.path.exists() E:\Work\study\python_model\read_file\data_root\2.xlsx
图54.os.path.exists(path)
用法:判断当前的路径是否存在
返回值为:存在返回Ture,不存在返回False
返回值类型:布尔型 具体见上一部分的代码中
5.os.path.basename(path)
用法:返回路径的最后的文件名
返回值类型:str
图6:os.path.6.os.path.split(path)
用法:切分目录和文件名
返回值:切分后的目录和文件名的元组
返回值类型:tuple
图7:os.path.split()欧了,笔记终于写完了,脑子里过了一遍,基本有了印象……晚安
网友评论