一、路径操作

  1. #将文件路径和文件名分割(会将最后一个目录作为文件名而分离)
  2. os.path.split(filename)
  3. #将文件路径和文件扩展名分割成一个元组
  4. os.path.splitext(filename)
  5. #返回文件路径的目录部分
  6. os.path.dirname(filename)
  7. #返回文件路径的文件名部分
  8. os.path.basename(filename)
  9. #将文件路径和文件名凑成完整文件路径
  10. os.path.join(dirname,basename)
  11. #获得绝对路径
  12. os.path.abspath(name)
  13. #把路径分割为挂载点和文件名
  14. os.path.splitunc(path)
  15. #规范path字符串形式
  16. os.path.normpath(path)
  17. #判断文件或目录是否存在
  18. os.path.exists()
  19. #如果path是绝对路径,返回True
  20. os.path.isabs()
  21. #返回path的真实路径
  22. os.path.realpath(path)
  23. #从start开始计算相对路径
  24. os.path.relpath(path[, start])
  25. #转换path的大小写和斜杠
  26. os.path.normcase(path)
  27. #判断name是不是一个目录,name不是目录就返回false
  28. os.path.isdir()
  29. #判断name是不是一个文件,不存在返回false
  30. os.path.isfile()
  31. #判断文件是否连接文件,返回boolean
  32. os.path.islink()
  33. #指定路径是否存在且为一个挂载点,返回boolean
  34. os.path.ismount()
  35. #是否相同路径的文件,返回boolean
  36. os.path.samefile()
  37. #返回最近访问时间 浮点型
  38. os.path.getatime()
  39. #返回上一次修改时间 浮点型
  40. os.path.getmtime()
  41. #返回文件创建时间 浮点型
  42. os.path.getctime()
  43. #返回文件大小 字节单位
  44. os.path.getsize()
  45. #返回list(多个路径)中,所有path共有的最长的路径
  46. os.path.commonprefix(list)
  47. #路径存在则返回True,路径损坏也返回True
  48. os.path.lexists
  49. #把path中包含的”~”和”~user”转换成用户目录
  50. os.path.expanduser(path)
  51. #根据环境变量的值替换path中包含的”$name”和”${name}”
  52. os.path.expandvars(path)
  53. #判断fp1和fp2是否指向同一文件
  54. os.path.sameopenfile(fp1, fp2)
  55. #判断stat tuple stat1和stat2是否指向同一个文件
  56. os.path.samestat(stat1, stat2)
  57. #一般用在windows下,返回驱动器名和路径组成的元组
  58. os.path.splitdrive(path)
  59. #遍历path,给每个path执行一个函数
  60. os.path.walk(path, visit, arg)
  61. #设置是否支持unicode路径名
  62. os.path.supports_unicode_filenames()

二、文件操作(os直属常用方法)

  1. #返回路径所在的根目录,主目录主文件
  2. os.walk(path)
  3. #返回路径下的目录和文件
  4. os.listdir(path)
  5. #重命名文件
  6. os.rename(oldfile,newfile)
  7. # 返回当前工作目录
  8. os.getcwd()
  9. # 关闭文件描述符 hw
  10. os.close(hw)
  11. # 关闭所有文件描述符,从 hw1(包含) 到 hw2(不包含), 错误会忽略
  12. os.closerange(hw1,hw2)
  13. # 通过文件描述符改变当前工作目录
  14. os.fchdir(hw)
  15. # 改变一个文件的访问权限,该文件由参数hw指定,参数mode是Unix下的文件访问权限。
  16. os.fchmod(hw, mode)
  17. # 修改一个文件的所有权,这个函数修改一个文件的用户ID和用户组ID,该文件由文件描述符hw指定。
  18. os.fchown(hw, id1, id2)
  19. # 强制将文件写入磁盘,该文件由文件描述符hw指定,但是不强制更新文件的状态信息。
  20. os.fdatasync(hw)
  21. #通过文件描述符hw 创建一个文件对象,并返回这个文件对象
  22. os.fdopen(hw[, mode[, bufsize]])
  23. #返回一个打开的文件的系统配置信息。name为检索的系统配置的值,
  24. #它也许是一个定义系统值的字符串,这些名字在很多标准中指定(POSIX.1, Unix 95, Unix 98, 和其它)。
  25. os.fpathconf(hw, name)
  26. #返回文件描述符hw的状态,像stat()。
  27. os.fstat(hw)
  28. #返回包含文件描述符hw的文件的文件系统的信息,像 statvfs()
  29. os.fstatvfs(hw)
  30. #强制将文件描述符为hw的文件写入硬盘。
  31. os.fsync(hw)
  32. #裁剪文件描述符hw对应的文件, 所以它最大不能超过文件大小。
  33. os.ftruncate(hw,length)
  34. #复制文件描述符hw
  35. os.dup(hw)
  36. # 将一个文件描述符hw复制到另一个hw1
  37. os.dup2(hw,hw1)
  38. # 返回与终端hw(一个由os.open()返回的打开的文件描述符)关联的进程组
  39. os.tcgetpgrp(hw)
  40. # 设置与终端hw(一个由os.open()返回的打开的文件描述符)关联的进程组为hw1。
  41. os.tcsetpgrp(hw, hw1)
  42. # 返回唯一的路径名用于创建临时文件。
  43. os.tempnam([dir[, prefix]])
  44. # 返回一个打开的模式为(w+b)的文件对象 .这文件对象没有文件夹入口,没有文件描述符,将会自动删除。
  45. os.tmpfile()
  46. # 为创建一个临时文件返回一个唯一的路径
  47. os.tmpnam()
  48. # 返回一个字符串,它表示与文件描述符hw 关联的终端设备。如果hw 没有与终端设备关联,则引发一个异常。
  49. os.ttyname(hw)
  50. # 删除文件路径
  51. os.unlink(path)
  52. # 返回指定的path文件的访问和修改的时间。
  53. os.utime(path, times)
  54. # 输出在文件夹中的文件名通过在树中游走,向上或者向下。
  55. os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
  56. # 写入字符串到文件描述符hw中. 返回实际写入的字符串长度
  57. os.write(hw, str)
  58. # 获取指定路径的文件系统统计信息
  59. os.statvfs(path)
  60. # 返回一个当前工作目录的Unicode对象
  61. os.getcwdu()
  62. # 如果文件描述符hw是打开的,同时与tty(-like)设备相连,则返回true, 否则False。
  63. os.isatty(hw)
  64. # 设置路径的标记为数字标记,类似 chflags(),但是没有软链接
  65. os.lchflags(path, flags)
  66. # 修改连接文件权限
  67. os.lchmod(path, mode)
  68. # 更改文件所有者,类似 chown,但是不追踪链接。
  69. os.lchown(path, uid, gid)
  70. # 返回path指定的文件夹包含的文件或文件夹的名字的列表。
  71. os.listdir(path)
  72. # 设置文件描述符 fd当前位置为pos, how方式修改: SEEK_SET 或者 0
  73. #设置从文件开始的计算的pos; SEEK_CUR或者 1 则从当前位置计算;
  74. #os.SEEK_END或者2则从文件尾部开始. 在unix,Windows中有效
  75. os.lseek(fd, pos, how)
  76. # 打开一个文件,并且设置需要的打开选项,mode参数是可选的
  77. os.open(file, flags[, mode])
  78. # 打开一个新的伪终端对。返回 pty 和 tty的文件描述符。
  79. os.openpty()
  80. # 返回相关文件的系统配置信息。
  81. os.pathconf(path, name)
  82. # 用于分割文件路径的字符串
  83. os.pathsep
  84. # 获取当前目录的父目录字符串名:('..')
  85. os.pardir
  86. # 创建一个管道. 返回一对文件描述符(r, w) 分别为读和写
  87. os.pipe()
  88. # 从一个 command 打开一个管道
  89. os.popen(command[, mode[, bufsize]])
  90. # 字符串指示当前使用平台。win->'nt'; Linux->'posix'
  91. os.name
  92. # 从文件描述符hw中读取最多n个字节,返回包含读取字节的字符串,
  93. #文件描述符hw对应文件已达到结尾, 返回一个空字符串。
  94. os.read(hw, n)
  95. #切换当前程序操作的路径
  96. os.chdir(path)