Python常用基础语法知识点大全(python中基本语法)
446
2022-08-23
Python----pathlib模块的用法
1、pathlib简介
2、常用场景举例
2.1、获取当前文件的绝对路径
from pathlib import Pathif __name__=="__main__": path=Path(__file__).resolve() print(path)
执行结果为:
G:\src\django\mysite1\mysite1\test.py
2.2、获取当前文件所在的目录的绝对路径
from pathlib import Pathif __name__=="__main__": path=Path(__file__).resolve().parent print(path)
执行结果为:
G:\src\django\mysite1\mysite1
2.3、获取一个绝对路径文件的后缀
当文件后缀只有一个点,如xxx.doc,xxx.py等,使用如下方式
from pathlib import Pathif __name__=="__main__": path=Path("G:/src/django/mysite1/mysite1/test.py") print(path.suffix)
执行结果如下:
.py
当文件后缀有多个点时,如xxx.tar.gz等,此时获取后缀需要用字符串的join方法处理一下
from pathlib import Pathif __name__=="__main__": path=Path("G:/src/django/mysite1/mysite1/test.tar.gz") print(path.suffix) print(path.suffixes) print("".join(path.suffixes))
执行结果如下:
.gz['.tar', '.gz'].tar.gz
2.4、获取一个路径的上层目录,上上层目录,上上上层目录
from pathlib import Pathif __name__=="__main__": path=Path("G:/src/django/mysite1/mysite1/test.tar.gz") print(path.parent) print(path.parent.parent) print(path.parent.parent.parent)
执行结果如下:
G:\src\django\mysite1\mysite1G:\src\django\mysite1G:\src\django
2.5、路径拼接
方式1:初始化Path实例的时候直接使用多个目录,如:
from pathlib import Pathif __name__=="__main__": path=Path("G:/","src/django","mysite1","mysite1","test.tar.gz") print(path)
执行结果为:
G:\src\django\mysite1\mysite1\test.tar.gz
方式二:使用joinpath方法
from pathlib import Pathif __name__=="__main__": path=Path("G:/src/django/mysite1") path=path.joinpath("mysite1/test.tar.gz") print(path)
执行结果如下:
G:\src\django\mysite1\mysite1\test.tar.gz
方式三:直接拼接
from pathlib import Pathif __name__=="__main__": path=Path("G:/src/django/mysite1") path=path / "mysite1/test.tar.gz" print(path)
执行结果如下:
G:\src\django\mysite1\mysite1\test.tar.gz
2.6、从文件绝对路径获取文件名
from pathlib import Pathif __name__=="__main__": path=Path("G:/src/django/mysite1/mysite1/test.py") print(path.name) print(path.stem) path = Path("G:/src/django/mysite1/mysite1/test.tar.gz") print(path.name) print(path.stem)
执行结果如下:可以看出stem函数目前只能在后缀只有一个点的时候好用,存在多个点的时候目前还是有问题的
test.pytesttest.tar.gztest.tar
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~