pathlib.path,python3 pathlib

  pathlib.path,python3 pathlib

  今天我要介绍一下Python中pathlib库的操作方法。pathlib是Python内置库,pathlib库中目录路径的操作更加简洁,更接近Python(Python代码风格)。对Pythonpathlib库知识感兴趣的人来看看吧。

  00-1010 1.Pathlib库介绍2。Pathlib库下Path类的基本用法2.1获取文件名2.2获取文件前缀和后缀2.3获取文件夹和下一级、上级文件夹2.4获取该文件所属的文件夹及其父文件夹2.5文件绝对路径2.6获取当前工作目录2.7获取用户2.8获取文件详细信息2.9检查目录或文件是否存在2.10检查指定路径是否为文件夹或文件2.11将相对路径转换为绝对路径2.12遍历一个目录2.13获取所有文件pathlib库与os库的比较参考

  

目录

 

  与常用的os.path相比,pathlib对目录路径的操作更加简洁,更接近Python(Python代码风格)。但是它不单纯是为了简化操作,还有更大的用途.

  Pathlib是Python内置的库,Python文档将其定义为:

  路径库模块面向对象的文件系统路径(面向对象的文件系统路径)

  Pathlib提供了表示文件系统路径的类,它的语义是适用于不同的操作系统.

  

1. pathlib库介绍

 

  

2. pathlib库下Path类的基本使用

 

  从Pathlib导入Path #导入pathlib的路径类

  导入操作系统

  ipynb=/home/leovin/jupyternotebookfolders/use of path lib library . ipynb

  p=路径(路径)

  Ipynb(f get文件名:{p.name}) # get文件名:pathlib库uses.ipynb

  

2.1 获取文件名

 

  —— .茎。后缀

  从pathlib导入路径

  导入操作系统

  ipynb=/home/leovin/jupyternotebookfolders/use of path lib library . ipynb

  p=路径(路径)

  print(f get prefix:{ p . stem } )# get prefix:path lib库的使用

  print(f get suffix:{ p . suffix } )# get suffix:ipynb

  

2.2 获取文件前缀和后缀

 

  —— .父母

  从pathlib导入路径

  导入操作系统

  ipynb=/home/leovin/jupyternotebookfolders/use of path lib library . ipynb

  p=路径(路径)

  Print(f 获取当前文件所属的文件夹:{p.parent} )

  Print(f 获取下一级文件夹:{p.parent.parent} )

  Print(f 获取上一级文件夹:{p.parent.parent.parent}

  ")

  """

  获取当前文件所属文件夹:/home/leovin/JupyterNotebookFolders

  获取上一级文件夹:/home/leovin

  获取上上一级文件夹:/home

  """

  Note: 最上级的文件夹是一个/

  

 

  

2.4 获取该文件所属的文件夹及其父文件夹

 

  —— .parents

  

from pathlib import Path

 

  

 

  

2.5 文件绝对路径

 

  按照/进行分割 —— .parts

  

from pathlib import Path

 

  

 

  

2.6 获取当前工作目录

 

  —— Path.cwd()

  

from pathlib import Path

 

  

 

  

2.7 获取用户

 

  home目录路径 —— Path.home()系列

  

from pathlib import Path

 

  

 

  

2.8 获取文件详细信息

 

  —— object.stat()

  

from pathlib import Path

 

  

可以看到,object.stat().xxx就是在调用attr

 

  

 

  

 

  

2.9 检查目录或者文件是否存在

 

  —— Path("路径").exists()

  

from pathlib import Path

 

  

 

  

2.10 检查指定指定路径是否为folder或者file

 

  —— Path("路径").is_file() & Path("路径").is_dir()

  

from pathlib import Path

 

  

directory为文件夹

 

  

 

  

 

  

2.11 将相对路径转换为绝对路径

 

  —— Path("路径").resolve()

  

from pathlib import Path

 

  

 

  

2.12 遍历一个目录

 

  —— Path("路径").iterdir()

  

from pathlib import Path

 

  

 

  

2.13 获取所有符合pattern的文件

 

  —— Path("路径").glob("folder1/xxx.格式")

  

from pathlib import Path

 

  

 

  

2.14 删除文件(非目录)

 

  —— Path("路径").unlink()

  

from pathlib import Path

 

  

 

  

3. pathlib库与os库的对比

 

  ospathlib库描述英文说明os.path.abspath(("文件路径"))Path("文件路径").resolve()将路径转换为绝对路径-os.chmod()Path("文件路径").chmod(xxx)更改文件权限change modeos.mkdir(("文件路径"))Path("文件路径").mkdir()新建文件夹make directoryos.rename("文件路径", "xxx")Path("文件路径").rename("xxx")重命名文件/文件夹名称-os.replace(a, b)Path("文件路径").replace(a, b)替换字符串-os.rmdir()Path("文件路径").rmdir()删除文件夹(里面必须是空的)remove directoryos.remove("文件路径") / os.unlink("文件路径")Path("文件路径").unlink()删除文件(非目录)-os.getcwd()Path("文件路径").cwd()获取当前文件工作目录current work directoryos.path.isdir()Path("文件路径").is_dir()判断当前路径是否为目录-os.path.isfile()Path("文件路径").is_file()判断当前路径是否为文件-os.stat()Path("文件路径").stat()返回当前路径的信息statusos.path.isabs()Path("文件路径").is_absolute()判断当前路径是否为绝对路径-os.path.basename()Path("文件路径").name返回文件/目录的基础名称(不带路径)-os.path.dirname()Path("文件路径").parent返回路径所属文件夹名称-os.path.samefile()Path("文件路径").samefile(xxx)判断两个文件是否相同-os.path.splitext("文件路径")(Path("文件路径").stem, Path("文件路径").suffix)将文件名分离,分成前缀和后缀stem + suffix

  

 

  

参考

 

  https://www.jb51.net/article/193402.htm

  https://docs.python.org/zh-cn/3/library/pathlib.html?highlight=pathlib#module-pathlib

  到此这篇关于Python中的pathlib库的文章就介绍到这了,更多相关Pythonpathlib库内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: