Python: pathlib基础用法

编程知识 行业动态 更新时间:2024-06-13 00:20:51

python操作文件,主要是os和pathlib。建议自己以后用pathlib,有优势

from pathlib import Path

print(Path(__file__)) # 正在运行的代码 d:\Neural Network\SuperPoint\Pytorch_SuperPoint\pytorch-superpoint-master\实验.py
print(Path.cwd()) # 当前工作目录 D:\Neural Network\SuperPoint\Pytorch_SuperPoint\pytorch-superpoint-master


''' 路径拼接 '''
sample1 = Path('D:/Google','DownGit.doc')
sample2 = Path(r'D:\Google','DownGit.doc')
print(sample1,sample2)
# D:\Google\DownGit.doc
# D:\Google\DownGit.doc

''' 创建文件夹,创建文件 '''
a = Path(r'D:\Google','Pathlib')
a.mkdir(exist_ok=True)           # exist_ok = True时,如果文件已存在,则不进行任何操作; 为False时,已存在会报错
b = Path(r'D:\Google','b.txt')   # 只能在已经存在的目录下创建文件
b.touch()

''' 获取目录下的所有文件 '''
path = Path(r'D:\Google')
data = list(path.iterdir()) # 已经是绝对路径了
print(data) 
# [WindowsPath('D:/Google/DownGit-master'), WindowsPath('D:/Google/DownGit.TXT'), WindowsPath('D:/Google/使用Google的方法.doc')]

''' 读取txt '''
a = data[1].read_text()

''' 如果要获得str格式的,只需要加上前缀str即可 '''
data_str = [str(i) for i in data]
print(data_str) 
# ['D:\\Google\\DownGit-master', 'D:\\Google\\DownGit.TXT', 'D:\\Google\\使用Google的方法.doc']


''' 路径判断:文件夹,文件,是否存在 '''
for i in data:
    print(i.is_dir()) 
    print(i.is_file())
    print(i.exists())
# True False True
# False True True
# False True True

''' 获取文件名(有无后缀),获取后缀 '''
for i in data:
    print(i.name,i.stem,i.suffix)
# DownGit-master DownGit-master
# DownGit.TXT DownGit .TXT
# 使用Google的方法.doc 使用Google的方法 .doc


''' pathlib操作COCO数据集实例 '''
data_path = Path(r'D:\Neural Network\COCO\train2014')
images = data_path.iterdir()  # 由于下面for循环要求可迭代即可,因此这里加不加list都可
import cv2
for image in images:
    sample = cv2.imread(str(image))
    cv2.imshow('a',sample)
    cv2.waitKey(0)
    print(' ')

更多推荐

Python: pathlib基础用法

本文发布于:2023-03-30 17:32:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/85a987026cd14ed75658516e1b36ba22.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:基础   Python   pathlib

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!