美文网首页
【2017-11-18】文件与IO(四)

【2017-11-18】文件与IO(四)

作者: 小蜗牛的成长 | 来源:发表于2017-11-18 21:51 被阅读0次

    os模块的使用,总结、加深

    • 获取路径及路径属性
      • os.getcwd() 获得当前工作目录
      • os.path.getsize(filename) 返回文件的大小,注意不是文件夹,否则返回为0
      • .os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间戳。
      • os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间戳
      • os.stat(path)获取所有属性,包括创建时间、最后修改时间、最后访问时间、权限模式、文件大小等
      • os.path.dirname() 返回指定路径的目录,相当于os.path.split()第一个元素
      • os.path.basename() 返回指定路径的文件名,相当于os.path.split()第二个元素
      • os.path.abspath() 返回指定文件规范化的绝对路径
      • os.listdir() 返回指定目录下的文件或目录名
    >>> import os
    >>> os.getcwd()
    'D:\\python3.6\\Lib\\idlelib'
    >>> path=r"E:\python\page5\first.py"
    >>> os.path.getsize(path)
    353
    >>> os.path.getmtime(path)
    1511009754.0
    >>> os.path.getatime(path)
    1510934400.0
    >>> os.stat(path)
    os.stat_result(st_mode=33206, st_ino=23722177728, st_dev=3276949959, st_nlink=1, st_uid=0, st_gid=0, st_size=353, st_atime=1510934400, st_mtime=1511009754, st_ctime=1511007380)
    >>> os.path.abspath("first.py")
    'D:\\python3.6\\Lib\\idlelib\\first.py'
    >>> os.path.dirname(path)
    'E:\\python\\page5'
    >>> os.path.dirname(os.path.dirname(path))
    'E:\\python'
    >>> os.path.basename(path)
    'first.py'
    >>> os.listdir(os.getcwd())
    >>> 
    
    • 操作路径及目录
      • os.mkdir(path) 创建目录,仅仅一级,若存在,则报错
      • os.rmdir(path) 要求目录为空, 否则抛出OSError错误
      • os.makedirs(path) 创建多级目录
      • os.removedirs(path) 先删除子目录,再删除父目录,子目录失败,父目录也失败,类似rmdir,既要求目录为空
      • os.remove(filename) 仅仅删除文件,不会删除目录
      • os.rename(old,new) 对文件进行重命名
      • os.renames(old,new) 对文件或者目录进行重命名,功能除了重命名,更类似剪切功能。可以将整个文件树移动到一个不存在的目录下
      • os.path.split 指定路径文件目录与文件名分离,返回一个包含目录名和文件名的元组,即(目录,文件)例如: os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt')
      • os.chdir(path)改变当前工作目录到指定的路径
      • os.path.join() 将多个指定目录进行拼接
      • os.walk(path) 深度遍历path,返回一个对象,他的每个部分都是一个三元组 ('目录x',[目录x下的目录list],目录x下面的文件) 。
    #示例:os.walk()
    for i in os.walk(os.getcwd()):
        print(i)
    #结果
    ('E:\\python\\page5', ['.idea', 'result', 'tt'], ['first.py'])
    ('E:\\python\\page5\\.idea', ['inspectionProfiles'], ['modules.xml', 'misc.xml', 'page5.iml', 'workspace.xml'])
    ('E:\\python\\page5\\.idea\\inspectionProfiles', [], ['profiles_settings.xml'])
    ('E:\\python\\page5\\result', [], ['ew'])
    ('E:\\python\\page5\\tt', ['3.txt'], [])
    ('E:\\python\\page5\\tt\\3.txt', [], [])
    
    • 测试文件或者目录是否存在
    • os.path.isfile() 返回指定路径是否为文件,是为true,否为false
    • os.path.isdir() 返回指定路径是否为目录,是为true,否为false
    • os.path.exists() 检查给定路径是否存在,存在true,不存在false

    相关文章

      网友评论

          本文标题:【2017-11-18】文件与IO(四)

          本文链接:https://www.haomeiwen.com/subject/sldyvxtx.html