美文网首页Python is Best
Python——os模块 os.path模块

Python——os模块 os.path模块

作者: So_ProbuING | 来源:发表于2017-10-23 18:00 被阅读11次

    Pythos中调用操作系统的模块,提供对操作系统进行调用的接口

    API方法

    • os.getcwd() 获取当前工作目录,即当前Python脚本工作的目录路径

    • os.chdir('dirname') 改变当前脚本工作目录,相当于shell下cd

    • os.curdir 返回当前目录'.'

    • os.pardir 返回当前目录的父目录名

    • os.makedirs(dirpath) 可生成多层递归目录

    os.makedirs('a\\b\\c')
    
    • os.removedirs(dirpath) 若目录为空,则删除并且递归到上一级目录,若上一级目录也为空,则删除。以此类推
    • os.mkdir('dirname') 生成单级目录
    • os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除
    • os.listdir('dirname') 列出指定目录下的所有文件和子目录
    • os.remove(path)只能删除文件不能删除目录
    • os.rename('dirname') 重命名文件/目录
    • os.stat('path/filename') 获取文件/目录信息
    • os.sep 输出操作系统特定的路径分隔符
    • os.linesep 输出当前平台使用的行终止符
    • os.pathsep 输出用于分割文件路径的字符串
    • os.name 输出字符串指示当前使用平台

      win --- 'nt'
      Linux --- 'posix'

    • os.system('command str') 运行shell命令 直接显示
    • os.environ 获取系统环境变量
    • os.path.abspath(path) 返回path规范化的绝对路径
    • os.path.split(path) 将path分割成目录和文件名的二元组返回
    • os.path.dirname(path) 返回path的目录,也就是split数组的第一个元素
    print(os.path.dirname('a'+sep+'b'+sep+'c'))
    # >>> a/b
    
    • os.path.basename(path) 返回path最后的文件名
    • os.path.exists(path) 如果path存在返回True如果Path不存在返回False
    • os.path.isabs(path) 判断是否是绝对路径 如果是绝对路径返回True
    • os.path.isfile(path) 判断是否是一个存在的文件,是一个存在的文件返回True如果不是返回False
    • os.path.isdir(path) 如果path是一个存在的目录,返回True否则返回False
    • os.path.join(path1[,path2[],...])将多个路径组合后返回
    • os.path.getatime(path) 返回path所指文件或目录的最后存取时间
    • os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间

    os.path模块

    os.path模块用于以一种可移植的方式操作路径名称。由os模块导入

    • abspath(path) 返回路径名称path,同时将当前的工作目录考虑在内
    path = '../pathon /foo'
    print(op.abspath(path))
    
    • basename(path)
      返回路径名称path的基本名称,也就是说返回最后的名称
    path = '/Users/D9ing/PycharmProjects/python/PythonLesson/pathon'
    print(op.basename(path))
    >>>
    pathon
    
    • commonprefix(list) 返回list中所有字符串的前缀中最长的字符串。如果list为空,将返回空字符串
    • dirname(path) 返回路径名称path的目录名称
    path = '/Users/D9ing/PycharmProjects/python/PythonLesson/pathon'
    print(op.dirname(path))
    >>> 
    /Users/D9ing/PycharmProjects/python/PythonLesson
    
    • exists(path) 如果path是现有路径返回True,如果path引用的是已经损坏的符号链接,返回False
    • expanduser(path) 使用用户的主要目录替换 ‘~user’格式的路径名称
    • expandvars(path) 扩展path中’$name‘或’${name}‘格式的环境变量。不符合规范或不存在的变量名称将保持不变
    • getatime(path) 返回最后一次访问path的事件,返回值是从纪元开始的秒数。
    • getctime(path) 在UNIX上返回的是最后一次修改path的事件。在windows上返回的是创建Path的事件
    • getmtime(path) 返回最后一次修改path的时间,返回值是从纪元开始的秒数
    • getsize(path) 返回path的大小,以字节为单位
    • isabs(path) 如果path是绝对路径名称,返回True
    • isfile(path) 如果path是普通文件,返回True
    • isdir(path) 如果path是目录,返回True
    • islink(path) 如果path引用的是符号链接,返回True
    • ismount(path) 如果path是挂载点,返回True
    • join(path1[,path2[,...]]) 将一个或多个路径组件智能地连接为一个路径名称。
    print(op.join('home', 'user', 'python'))
    home/user/python
    
    • lexists(path) 如果path存在,返回True
    • normcase(path) 标准化路径名称的大小写。在不区分大小写的文件系统上,把路径转换为小写字母,在windows上,把正斜杠转换为反斜杠
    • normpath(path) 标准化路径名称,例如 将'A//B A/.B和‘A/foo/..’'都变为'A/B' 在windows上,把正斜杠转换为反斜杠
    • realpath(path) 返回path的真实路径,并除去路径中的所有符号连接
    • relpath(path[,start]) 返回从当前工作目录到path的一条相对路径。可以提供start来指定另一个起始目录
    • samefile(path1,path2)如果path1和path2引用同一个文件或目录,返回True
    • sameopenfile(fp1,fp2)如果打开的文件对象fp1和fp2引用同一个文件,返回True
    • samestat(stat1,stat2) 如果fstat()、lstat()或stat()返回的stat元组和stat1和stat2引用同一个文件,则返回True
    • split(path) 将path拆分为(head,taill)对,其中tail是最后一个路径名称的组件,而head是tail之前的内容。
    path = '/Users/D9ing/PycharmProjects/python/PythonLesson/pathon'
    print(op.split(path))
    >>>
    ('/Users/D9ing/PycharmProjects/python/PythonLesson', 'pathon')
    
    • splitdrive(path) 将path拆分为(drive,filename)对,其中drive是驱动器说明或空字符串,在没有驱动器说明的系统上,drive始终是空字符串
    path = '/Users/D9ing/PycharmProjects/python/PythonLesson/pathon'
    print(op.splitdrive(path))
    >>>
    ('', '/Users/D9ing/PycharmProjects/python/PythonLesson/pathon')
    
    • splitunc(path) 将路径名称拆分为(unc,rest)对,其中unc是挂载点,而rest是路径的余下部分

    相关文章

      网友评论

        本文标题:Python——os模块 os.path模块

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