开发者

Python开发教程之os.path的常用操作总结

目录
  • 前言
  • 路径管理 os.path
    • 1.相对路径转绝对路径
    • 2.获取路径中的最后一部分内容
    • 3.找到多个字符串路径的最长公共路径(有效真实的路径)
    • 4.找出多个字符串路径的最长公共前缀​​ 
    • 5.判断路径是否真实存javascript
    • 6.处理与用户主目录相关的路径扩展​
    • 7.扩展路径中的环境变量
    • 7.获取给定路径下的文件创建时间
    • 8.获取给定路径下的文件最后访问时间
    • 9.获取给定路径下的文件最后修改时js
    • 10.获取给定路径下的文件大小
  • 总结

    前言

    python的os模块(operating system)是提供给用户来与操作系统进行交互的内置库,可以用来进行文件和目录的管理操作。它提供了一系列函数,允许你创建、删除、重命名、遍历以及获取文件和目录的信息。本文我将为大家介绍这个内置库在路径管理中的一些常用基本操作。

    Python开发教程之os.path的常用操作总结

    路径管理 os.path

    当我们使用os进行路径管理时,需要用到os.path这个类下的一些方法

    1.相对路径转绝对路径

    使用os.path.abspath()即可实现将相对路径转换为绝对路径

    import os
    os.path.abspath('情况表.xlsx')

    结果: 

    Python开发教程之os.path的常用操作总结

    2.获取路径中的最后一部分内容

    使用os.path.basename()可以获取路径中的最后一部分内容,如果该路径指向的是一个文件,那么返回结果便是文件名,如果该路径指向一个目录,那么返回结果为目录名。

    import os
    os.path.basename(r'e:\\OneDrive\\Desktop\\帮忙\\毕业设计.docx')

    结果:

    Python开发教程之os.path的常用操作总结

    这里需要注意的是,对于basename函数,只要传入的字符串是pathLike(带有\:等标识符)的,返回结果便是最后一部分,无论这个路径是否有效 

    3.找到多个字符串路径的最长公共路径(有效真实的路径)

    使用os.path.commompath()函数即可实现上述功能,一般而言,我们可以用它来查找文件的根目录。

    import os
    paths=[
        '/帮忙/毕业设计.docx',
        '/帮忙/情况表.xlsx',
    ]
    print(os.path.commonpath(paths)) 

    结果: 

    Python开发教程之os.path的常用操作总结

    这里需要注意的是commonpath函数传入的路径列表内的所有路径必须存在公共路径,也就是具有相同根目录,否则会报错。

    Python开发教程之os.path的常用操作总结

    4.找出多个字符串路径的最长公共前缀​​ 

    使用os.path.commonprefix()可以实现该功能,不过需要注意的是该函数接受的参数是任意字符串,返回值也是字符串,因此使用该函数并不能一定获取到一个路径。

    import os
    paths=[
        'Goodnight',
        'Goodmorning',
        'Goodafternoon'
    ]
    print(os.path.commonprefix(paths)) 

     结果:

    Python开发教程之os.path的常用操作总结

    5.判断路径是否真实存在

    os.path.exists()是我们在进行路径处理时使用频率最高的一个函数,主要用来判断给定路径是否真实有效,返回值为True or False.

    import os
    print(os.path.exists(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx'))
    print(os.path.exists(r'E:\OneDrive\Desktop\帮忙\毕业设计'))

    结果:

    Python开发教程之os.path的常用操作总结

    6.处理与用户主目录相关的路径扩展​

    os.expanduser()函数可以实现上述操作,当我们开发跨平台应用需要在用户主目录下配置文件时即可使用该函数。

    import os
    print(os.path.expanduser('~'))#输出:'/home/username'(linux)或'C:\\Users\\username(Windows)
    print(os.path.expanduser('~/Documents'))#输出:'/home/username/Documents'或'C:\\Users\\username\\Documents'

    结果:

    Python开发教程之os.path的常用操作总结

    7.扩展路径中的环境变量

    环境变量(Environment Variables)是操作系统中用来​​存储系统配置信息和用户设置​​的键值对(key-value pairs),可以被操作系统和应用程序访问使用。在Windows系统中,可以运行:

    "SystemPropertiesAdvanced.exe"打开系统属性面板后,点击环境变量来手动管理。

    Python开发教程之os.path的常用操作总结

    js

    使用os.path.expandvars()可以将包含环境变量引用(如 $VAR 或 ${VAR} 格式)的路径字符串转换为包含实际变量值的完整路径。

    import os
    var=os.path.expandvars(r"%wechatpath%")
    print(var)

    结果:

    Python开发教程之os.path的常用操作总结

    7.获取给定路径下的文件创建时间

    使用os.getctime()可以获取给定路径下的文件的创建时间,返回结果为从​​纪元(1970-01-01 00:00:00 UTC)​​到创建时间的秒数(浮点数)

    import os
    import time
    print(os.path.getctime(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx'))
    print(time.ctime(os.path.getctime(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx')))

    特别地,如果我们想将返回值转换为可读的时间戳,可以使用time模块下的ctime

     结果:

    Python开发教程之os.path的常用操作总结

    8.获取给定路径下的文件最后访问时间

    使用os.getatime()可以获取给定路径下的文件的创建时间,返回结果为从​​纪元(1970-01-01 00:00:00 UTC)​​到创建时间的android秒数(浮点数)

    import os
    import time
    print(os.path.getatime(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx'))
    print(time.ctime(os.path.getatime(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx')))

    结果:

    Python开发教程之os.path的常用操作总结

    9.获取给定路径下的文件最后修改时间

    import os
    import time
    print(os.path.getmtime(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx'))
    print(time.ctijavascriptme(os.path.getmtime(r'E:\OneDrive\Desktop\帮忙\毕业设计.docx')))

    结果:

    Python开发教程之os.path的常用操作总结

    10.获取给定路径下的文件大小

    使用os.path.getsize()函数可以实现这一功能,返回值的结果为文件的字节数Byte,若需要转换为KB或MB或GB需要除1024.

    import os
    path=r'E:\OneDrive\Desktop\帮忙\毕业设计.docx'
    print(f'{round(os.path.getsize(path))}B')
    print(f'{round(os.path.getsize(path)/1024)}KB')

    结果:

    Python开发教程之os.path的常用操作总结

    总结

    到此这篇关于Python开发教程之os.path常用操作的文章就介绍到这了,更多相关Python os.path常用操作内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜