首页 > 其他分享 >使用 pathlib 代替 os.path

使用 pathlib 代替 os.path

时间:2023-08-17 17:35:01浏览次数:41  
标签:pathlib file Path print path os 目录

使用 pathlib 代替 os.path

这个是 3.4 版本以后的新功能

from pathlib import Path

# 获取当前工作目录
current_dir = Path.cwd()
print("当前工作目录:", current_dir)

# 获取用户 home 目录
home_dir = Path.home()
print("用户 home 目录:", home_dir)

# 获取当前文件路径
current_file = Path(__file__)
print("当前文件路径:", current_file)

# 获取上一级目录
parent_dir = current_file.parent
print("上一级目录:", parent_dir)

# 路径拼接
path1 = Path("path/to")
path2 = Path("file.txt")
combined_path = path1 / path2
print("拼接后的路径:", combined_path)

# 创建目录
path = Path("path/to/directory")
path.mkdir()

# 检查目录是否存在
path = Path("path/to/directory")
if path.exists():
    print("目录存在")
else:
    print("目录不存在")

# 列出目录下的文件和子目录
path = Path("path/to/directory")
for item in path.iterdir():
    if item.is_file():
        print("文件:", item)
    elif item.is_dir():
        print("子目录:", item)

# 递归地列出目录下的所有文件
path = Path("path/to/directory")
for file in path.glob("**/*"):
    print(file)

# 删除目录
path = Path("path/to/directory")
path.rmdir()

# 列出当前目录树下的所有 Python 源代码文件:
# 递归地列出目录下的所有文件
path = Path("path/to/directory")
for file in path.glob("**/*.py"):
    print(file)


这些是使用 pathlib 进行常见目录操作的一些案例。根据实际需求,你可以根据这些案例进行修改和扩展。

标签:pathlib,file,Path,print,path,os,目录
From: https://www.cnblogs.com/coreylin/p/17638281.html

相关文章

  • VM cannot power on due to locked on ESXI hosts
    Checkiftherearesome.lckfilesexistsinVMfolderIfyes,sshtoESXihostandnavigatetothevmfolder,thenusefollowingcommandfindouttheVMlockedonwhichESXihostsforfilein$(ls-a);doecho${file};vmfsfilelockinfo-p${file}|grep-i......
  • 操作系统OS
    操作系统简介阅读目录一为什么要有操作系统二什么是操作系统三操作系统与普通软件的区别四操作系统发展史一为什么要有操作系统现代的计算机系统主要是由一个或者多个处理器,主存,硬盘,键盘,鼠标,显示器,打印机,网络接口及其他输入输出设备组成。一般而言,现代计算机系统......
  • PostgreSQL-log函数的用法
    最近在看关于PostgreSQL内部原理的一些东西,并借助翻译软件,做一些翻译,整理成文档,以便自己能够快速理解的同时,加以记录。在单表查询的开销估算中,关于索引扫描的启动开销,有一个等式,使用到了函数ceil和log2。等式是这样写的:'start-upcost'={ceil(log2(10000))+(1+1)*50}*0.0025=......
  • 【HarmonyOS】鸿蒙应用获取华为帐号手机号码步骤(API7及以下)
    ​【写在前面】本文主要介绍使用API7及以下版本开发HarmonyOS应用时,通过华为帐号SDK和云侧接口获取手机号码的主要开发步骤,注意:开发过程中集成的华为帐号SDK仅支持API7及以下版本的HarmonyOS应用。 【前提准备】1、HarmonyOS应用已申请获取手机号码的权限,申请权限文档请参考......
  • BOSHIDA DC电源模块使用可靠电容的重要性
    BOSHIDADC电源模块使用可靠电容的重要性现今,DC电源模块已成为许多电子设备的核心零部件。在各种设备中,电源模块扮演着将交流电转换为直流电的重要角色。而在电源模块中,电容作为重要的电子元件之一,可以起到储能滤波、干扰抑制、稳压、耦合等作用。因此,使用可靠电容在DC电源模块中......
  • 云原生之使用Docker部署webos私有云盘
    (云原生之使用Docker部署webos私有云盘)一、webos介绍1.webos简介WebOS是一个支持多种存储,云端存储&协同办公新体验:如Windows11体验的私有云盘/企业网盘。完全支持私有化部署,存储安全可控、数百种文件格式在线预览、编辑和播放、轻松分享。高效协作,细粒度权限管控全平台客户端......
  • centos 7 2009 Linux系统之多网卡Team链路聚合配置
    Linux系统之Team链路聚合配置操作步骤一、Team链路聚合介绍1.Teaming技术简介2.网卡的bonding和Teaming技术3.Team常用工作模式二、实践环境规划三、添加物理网卡1.新增物理网卡2.查看网卡信息四、Team链路聚合配置1.查看team的......
  • 常见应用的docker-compose.yml配置
    MYSQLversion:"3"services:db:image:mysql:5.7.35privileged:truerestart:alwaysenvironment:MYSQL_ROOT_PASSWORD:CREC_2021TZ:Asia/Shanghaicommand:--lower_case_table_names=1--max_connecti......
  • CentOS7.6安装VMware Tools小白保姆级教程
    一.安装环境1.操作系统CentOS-7.6-x86_64-DVD-1810.isoRoot用户!!!2.虚拟机设置二.安装步骤1.进入root用户后,右键挂载的ISO镜像文件,点击弹出!!!(若不弹出无法正常安装VMwareTools)2.点击虚拟机->重新安装VMwareTools3.耐心等待桌面出现VMwareTools的ISO镜像文件4.打开VMwa......
  • centos7离线安装postgres
    官网下载源码包https://www.postgresql.org/ftp/source/v12.10/postgresql-12.10.tar.gz 上传到/usr/local目录tar-zxvfpostgresql-12.10.tar.gz 解压文件cdpostgresql-12.10依次执行如下命令 ./configure makesudomakeinstall如果执行中报如下错误则需要安装......