79.2.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()函数换算)10.exists(path):判断指定路径(目录或者文件)是否存在11.isabs(path):判断指定路径是否为绝对路径12.isdir(path):判断指定路径是否存在且是一个目录13.isfile(path):判断指定路径是否存在且是一个文件14.islink(path):判断指定路径是否存在且是一个符号链接15.ismount(path):判断指定路径是否存在且是一个挂载点16.samefile(path1,path2):判断path1和path2两个路径是否指向同一个文件

注意:导入模块:import os
首先在D盘中创建一个文件夹‘A’
举几个例子:

例子1:>>>import os>>> os.path.basename('D:\\A')'A'
第一个basename去掉目录路径,只返回了文件名
  例子2:>>> os.path.dirname('D:\\A')'D:\\'

第二dirname只返回了目录路径,去掉文件名了

 例子3:>>> os.path.join('A','B','C')'A\\B\\C'

使用join可以将几个文件合并起来

  例子4:>>> os.path.split('D:\\A\\B')('D:\\A', 'B')

split返回一个元组,将文件名和路径分开

例子5:>>> os.path.splitext('D:\\A\\test.TXT')('D:\\A\\test', '.TXT')

splitext将文件名和扩展名分开
例子6:先在D盘中创建:D:\A\test.txt(在D盘中创建test时不要加上‘.txt’,不然会报错,找不到指定文件)

           创建时间:2012年4月5日,11:56:38修改时间:2012年4月5日,11:56:38访问时间:2012年4月5日,11:56:38
 >>> os.path.getatime('D:\\A\\test.txt')1617594998.747296(还是浮点数,需要转换)>>> import time>>> time.gmtime(os.path.getatime('D:\\A\\test.txt'))time.struct_time(tm_year=2021, tm_mon=4, tm_mday=5, tm_hour=3, tm_min=56,              tm_sec=38, tm_wday=0, tm_yday=95, tm_isdst=0)
         可以看出和我们创建的时间一样的
     >>> time.localtime(os.path.getatime('D:\\A\\test.txt'))time.struct_time(tm_year=2021, tm_mon=4, tm_mday=5, tm_hour=11, tm_min=56,              tm_sec=38, tm_wday=0, tm_yday=95, tm_isdst=0)
          如果现在对test.txt进行修改:创建时间:2012年4月5日,11:56:38修改时间:2012年4月5日,12:07:50访问时间:2012年4月5日,12:07:50
   >>> os.path.getmtime('D:\\A\\test.txt')1617595670.3732553>>> time.gmtime(os.path.getatime('D:\\A\\test.txt'))time.struct_time(tm_year=2021, tm_mon=4, tm_mday=5, tm_hour=4, tm_min=7,                     tm_sec=50, tm_wday=0, tm_yday=95, tm_isdst=0)>>> time.localtime(os.path.getatime('D:\\A\\test.txt'))time.struct_time(tm_year=2021, tm_mon=4, tm_mday=5, tm_hour=12, tm_min=7,                   tm_sec=50, tm_wday=0, tm_yday=95, tm_isdst=0)
          可以看到和我们修改的时间是相一致的。关于相对路径和绝对路径可以到网上查一下。

关于学习Python的一点学习总结(40->os.path模块)相关推荐

  1. 关于学习Python的一点学习总结(57->正则表达式及re模块中的一些函数)

    关于这个正则表达式,我本人也是有点不完全懂,还在继续学习中. 97.re 1.正则表达式: 1.通配符:正则表达式可与多个字符串匹配,可使用特殊字符来创建这种正则表达式 例如:正则表达式'.ython ...

  2. 关于学习Python的一点学习总结(54->集合->堆->双端队列)

    集合,堆,双端队列 再谈集合set:集合是由内置类set实现的 >>> set(range(10)){0, 1, 2, 3, 4, 5, 6, 7, 8, 9} 可使用序列(或其他可 ...

  3. 关于学习Python的一点学习总结(58->匹配对象和编组)

    匹配对象和编组 1.模块re中,查找与模式匹配的子串的函数都在找到时返回MatchObject对象.这种对象包 含与模式匹配的子串的信息,还包含模式的哪部分与子串的哪部分匹配的信息.这些子串部分称 为 ...

  4. 关于学习Python的一点学习总结(52->模块就是程序)

    91.模块就是程序 # hello.py print("Hello, world!") 将其保存在文件hello.py中,这个文件的名称(不包括扩展名.py)将成为模块的名称.这个 ...

  5. 关于学习Python的一点学习总结(47->静态方法和类方法)

    86.静态方法和类方法:静态方法和类方法是这样创建的:将它们分别包装在staticmethod和classmethod类的对象中.静态方法的定义中没有参数self,可直接通过类来调用.类方法的定义中包 ...

  6. 关于学习Python的一点学习总结(41->相关的BIF操作)

    81.一些相关的BIF 1.>>> class BIF:def __init__(self,t):self.t=thasattr(object,name):判断name是否在obje ...

  7. 关于学习Python的一点学习总结(38)

    78.文件: 1.文件的类型:包括ASCII,MIME,.txt等格式. 2.文件的格式类型:(1).MPEG视频:mp4;(2).图片格式:.jpg:(3)powerpoint文档:.ppt; (4 ...

  8. 关于学习Python的一点学习总结(35->关联超类)

    76.调用为关联的超类(继承的类)构造函数 先举个例子: class Bird: def __init__(self): self.hungry = True def eat(self): if se ...

  9. 关于学习Python的一点学习总结(30->递归实例)

    68.递归 先来两个例子: 1.阶乘 def Fact(num):result=numfor i in range(1,num):result*=ireturn result>>> ...

  10. 关于学习Python的一点学习总结(25->pass占位符)

    60.1.什么都不做:pass-可用作为占位符,当你写的某一块程序什么都不做的时候,可以添加这个 pass,不然程序会无法执行. 2.del:Python中的垃圾收集器 先看一段代码: >> ...

最新文章

  1. C#类中的internal成员可能是一种坏味道
  2. idea 中javax.servlet.http.HttpServlet包导不进来
  3. 分布式系统中的一致性协议
  4. 发布 128 核 Altra Max,自研内核,明年推出 5nm 处理器,“性能怪兽”Ampere 搞大事?
  5. Java 算法 礼物分配
  6. java四种修饰符_java中的四种修饰符
  7. 金华资产封存页面问题
  8. 53 年 IT 老兵详谈传统网络到互联网的演变史
  9. Lua初学习 9-13_04 require moudle
  10. 杭电acm2034 人见人爱A-B
  11. 9)Thymeleaf ⼯具类对象表达式
  12. vivado使用入门
  13. matlab绘制xy色度图函数
  14. VS2019+CUDA编程(流程)
  15. 苹果怎么用测试软件,iPhone 也能测量身高教你怎么用 iOS「测距仪」App
  16. 利用GAN生成动漫头像
  17. c语言中的内存4区域模型(堆,栈,全局区,代码区)
  18. 产品经理笔试面试准备
  19. Jquery鼠标点击后变色,点击另一个按钮颜色还原
  20. JavaSE学习笔记(一)基础知识

热门文章

  1. 小于60的数中能被1到10整除的数量
  2. SWideRNet:全景分割新标杆!
  3. 【Python基础】使用统计函数绘制简单图形
  4. 干货 | 一文总结旋转目标检测全面综述:论文方法与代码
  5. 导师:学CV的不懂目标检测?那你别学了
  6. Transformers 研究指南
  7. 基础知识——列表简介(二)
  8. mysql存储、function、触发器等实例
  9. 4.1ASP.NET Core请求过程「深入浅出ASP.NET Core系列」
  10. QGIS Server使用记录