热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

详解os,os.path模块关于文件目录常用的方法

这篇文章主要为大家详解os,os.path模块关于文件目录常用的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Python是跨平台的语言,也即是说同样的源代码在不同的操作系统不需要修改就可以同样实现。

有了OS模块,我们不需要关心什么操作系统下使用什么模块,OS模块会帮你选择正确的模块并调用。

番号函数名使用方法
1getcwd()返回当前工作目录
2chdir(path)改变工作目录
3listdir(path='.')列举指定目录中的文件名('.'表示当前目录,'..'表示上一级目录)
4mkdir(path)创建单层目录,如该目录已存在抛出异常
5makedirs(path)递归创建多层目录,如该目录已存在抛出异常,注意:'E:\\a\\b'和'E:\\a\\c'并不会冲突
6remove(path)删除文件
7rmdir(path)删除单层目录,如该目录非空则抛出异常
8removedirs(path)递归删除目录,从子目录到父目录逐层尝试删除,遇到目录非空则抛出异常
9rename(old, new)将文件old重命名为new
10system(command)运行系统的命令
11walk(top)遍历top路径以下所有的子目录,返回一个三元组:(路径, [包含目录], [包含文件])

以下是支持路径操作中常用到的一些定义,支持所有平台

番号函数名使用方法
1os.curdir指代当前目录('.')
2os.pardir指代上一级目录('..')
3os.sep输出操作系统特定的路径分隔符(Win下为'\\',Linux下为'/')
4os.linesep当前平台使用的行终止符(Win下为'\r\n',Linux下为'\n')
5os.name指代当前使用的操作系统

os.path模块中关于路径常用的函数使用方法

番号函数名使用方法
1 basename(path) 去掉目录路径,单独返回文件名
2 dirname(path) 去掉文件名,单独返回目录路径
3 join(path1[, path2[, ...]]) 将path1, path2各部分组合成一个路径名
4 split(path) 分割文件名与路径,返回(f_path, f_name)元组。如果完全使用目录,它也会将最后一个目录作为文件名分离,且不会判断文件或者目录是否存在
5 splitext(path) 分离文件名与扩展名,返回(f_name, f_extension)元组
6 getsize(file) 返回指定文件的尺寸,单位是字节
7 getatime(file) 返回指定文件最近的访问时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
8 getctime(file) 返回指定文件的创建时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)
9 getmtime(file) 返回指定文件最新的修改时间(浮点型秒数,可用time模块的gmtime()或localtime()函数换算)

以下为函数返回 True 或 False

番号函数名使用方法
1exists(path)判断指定路径(目录或文件)是否存在
2isabs(path)判断指定路径是否为绝对路径
3isdir(path)判断指定路径是否存在且是一个目录
4isfile(path)判断指定路径是否存在且是一个文件
5islink(path)判断指定路径是否存在且是一个符号链接
6ismount(path)判断指定路径是否存在且是一个挂载点
7samefile(path1, paht2)判断path1和path2两个路径是否指向同一个文件

以上就是详解os,os.path模块关于文件目录常用的方法的详细内容,更多请关注 第一PHP社区 其它相关文章!


推荐阅读
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 本文介绍了使用Python和C语言编写程序来计算一个给定数值的平方根的方法。通过迭代算法,我们能够精确地得到所需的结果。 ... [详细]
  • 2019年独角兽企业招聘Python工程师标准课程概览
    本文详细介绍了2019年独角兽企业在招聘Python工程师时的标准课程内容,包括Shell脚本中的逻辑判断、文件属性判断、if语句的特殊用法及case语句的应用。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 一文详解Linux
    Linuxnetfilter与VRF实验环境如下图所示:配置如下:#!binbashsudoipnetnsaddns1sudoiplinkaddns1veth1typevethpe ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • 最适合初学者的编程语言
    本文探讨了适合编程新手的最佳语言选择,包括Python、JavaScript等易于上手且功能强大的语言,以及如何通过有效的学习方法提高编程技能。 ... [详细]
  • MITM(中间人攻击)原理及防范初探(二)
    上一篇文章MITM(中间人攻击)原理及防范初探(一)给大家介绍了利用ettercap进行arp欺骗及劫持明文口令,后来我发现好友rootoorotor的文章介绍比我写的更透彻,所以基础利用大家可以参看 ... [详细]
  • Android 中的布局方式之线性布局
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文由chszs撰写,详细介绍了Apache Mina框架的核心开发流程及自定义协议处理方法。文章涵盖从创建IoService实例到协议编解码的具体步骤,适合希望深入了解Mina框架应用的开发者。 ... [详细]
  • 本文提供了一个关于AC自动机(Aho-Corasick Algorithm)的详细解析与实现方法,特别针对P3796题目进行了深入探讨。文章不仅涵盖了AC自动机的基本概念,还重点讲解了如何通过构建失败指针(fail pointer)来提高字符串匹配效率。 ... [详细]
  • 10月19日,限量免费参与IBM云计算大会
    10月19日,限量免费报名参加IBM云计算大会,探索前沿科技,推动商业转型。 ... [详细]
  • 本报告记录了嵌入式软件设计课程中的第二次实验,主要探讨了使用KEIL V5开发环境和ST固件库进行GPIO控制及按键响应编程的方法。通过实际操作,加深了对嵌入式系统硬件接口编程的理解。 ... [详细]
  • LeetCode 102 - 二叉树层次遍历详解
    本文详细解析了LeetCode第102题——二叉树的层次遍历问题,提供了C++语言的实现代码,并对算法的核心思想和具体步骤进行了深入讲解。 ... [详细]
author-avatar
神烟醉_263
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有