用了很久的os.path,今天发现竟然还有这么好用的库,记录下来以便使用。
1.调用库
from pathlib import
2.创建Path对象
p = Path('D:/python/1.py') print(p) #可以这么使用,相当于os.path.join() p1 = Path('D:/python') p2 = p1/'123' print(p2)
结果
D:\python\1.py D:\python\123
3.Path.cwd()
获取当前路径
path = Path.cwd() print(path)
结果:
D:\python
4.Path.stat()
获取当前文件的信息
p = Path('1.py') print(p.stat())
结果
os.stat_result(st_mode=33206, st_ino=8444249301448143, st_dev=2561774433, st_nlink=1, st_uid=0, st_gid=0, st_size=4, st_atime=1525926554, st_mtime=1525926554, st_ctime=1525926554)
5.Path.exists()
判断当前路径是否是文件或者文件夹
> Path('.').exists() True > Path('1.py').exists() True > Path('2.py').exists() False
6.Path.glob(pattern)与Path.rglob(pattern)
Path.glob(pattern):获取路径下的所有符合pattern的文件,返回一个generator
目录下的文件如下:
以下是获取该目录下所有py文件的路径:
path=Path.cwd() pys = path.glob('*.py')#pys是经过yield产生的迭代器 for py in pys: print(py)
结果:
C:\python\1.py C:\python\11.py C:\python\1111.py C:\python\11111.py
Path.rglob(pattern):与上面类似,只不过是返回路径中所有子文件夹的符合pattern的文件。
7.Path.is_dir()与Path.is_file()
Path.is_dir()判断该路径是否是文件夹 Path.is_file()判断该路径是否是文件 print('p1:') p1 = Path('D:/python') print(p1.is_dir()) print(p1.is_file()) print('p2:') p2 = Path('D:/python/1.py') print(p2.is_dir()) print(p2.is_file()) #当路径不存在时也会返回Fasle print('wrong path:') print(Path('D:/NoneExistsPath').is_dir()) print(Path('D:/NoneExistsPath').is_file())
结果
p1: True False p2: False True wrong path: False False
8.Path.iterdir()
当path为文件夹时,通过yield产生path文件夹下的所有文件、文件夹路径的迭代器
p = Path.cwd() for i in p.iterdir(): print(i)
结果
D:\python\1.py D:\python\11.py D:\python\1111.py D:\python\11111.py D:\python\dir
9.Path.mkdir(mode=0o777,parents=Fasle)
根据路径创建文件夹
parents=True时,会依次创建路径中间缺少的文件夹
p_new = p/'new_dir' p_new.mkdir() p_news = p/'new_dirs/new_dir' p_news.mkdir(parents=True)
结果
10.Path.open(mode='r', buffering=-1, encoding=None, errors=None, newline=None)
类似于open()函数
11.Path.rename(target)
当target是string时,重命名文件或文件夹
当target是Path时,重命名并移动文件或文件夹
p1 = Path('1.py') p1.rename('new_name.py') p2 = Path('11.py') target = Path('new_dir/new_name.py') p2.rename(target)
结果
12.Path.replace(target)
重命名当前文件或文件夹,如果target所指示的文件或文件夹已存在,则覆盖原文件
13.Path.parent(),Path.parents()
parent获取path的上级路径,parents获取path的所有上级路径
14.Path.is_absolute()
判断path是否是绝对路径
15.Path.match(pattern)
判断path是否满足pattern
16.Path.rmdir()
当path为空文件夹的时候,删除该文件夹
17.Path.name
获取path文件名
18.Path.suffix
获取path文件后缀
以上这篇对python3中pathlib库的Path类的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]