python os.path模块常用方法详解:转:http://wangwei007.blog.51cto.com/68019/1104940

  1. 1.os.path.abspath(path) 
  2. 返回path规范化的绝对路径。 
  3.  
  4. >>> os.path.abspath('test.csv') 
  5. 'C:\Python25\test.csv' 
  6.  
  7. >>> os.path.abspath('c:\test.csv') 
  8. 'c:\test.csv' 
  9.  
  10. >>> os.path.abspath('../csv\test.csv') 
  11. 'C:\csv\test.csv' 
  12.  
  13. 2.os.path.split(path) 
  14. 将path分割成目录和文件名二元组返回。 
  15.  
  16. >>> os.path.split('c:\csv\test.csv') 
  17. ('c:\csv', 'test.csv') 
  18. >>> os.path.split('c:\csv\') 
  19. ('c:\csv', '') 
  20.  
  21. 3.os.path.dirname(path) 
  22. 返回path的目录。其实就是os.path.split(path)的第一个元素。 
  23.  
  24. >>> os.path.dirname('c:\csv est.csv') 
  25. 'c:\' 
  26. >>> os.path.dirname('c:\csv') 
  27. 'c:\' 
  28.  
  29. 4.os.path.basename(path) 
  30. 返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素。 
  31.  
  32. >>> os.path.basename('c:\test.csv') 
  33. 'test.csv' 
  34. >>> os.path.basename('c:\csv') 
  35. 'csv' (这里csv被当作文件名处理了) 
  36. >>> os.path.basename('c:\csv\') 
  37. '' 
  38.  
  39. 5.os.path.commonprefix(list) 
  40. 返回list中,所有path共有的最长的路径。 
  41.  
  42. 如: 
  43. >>> os.path.commonprefix(['/home/td','/home/td/ff','/home/td/fff']) 
  44. '/home/td' 
  45.  
  46. 6.os.path.exists(path) 
  47. 如果path存在,返回True;如果path不存在,返回False。 
  48.  
  49. >>> os.path.exists('c:\') 
  50. True 
  51. >>> os.path.exists('c:\csv\test.csv') 
  52. False 
  53.  
  54. 7.os.path.isabs(path) 
  55. 如果path是绝对路径,返回True。 
  56.  
  57. 8.os.path.isfile(path) 
  58. 如果path是一个存在的文件,返回True。否则返回False。 
  59.  
  60. >>> os.path.isfile('c:\boot.ini') 
  61. True 
  62. >>> os.path.isfile('c:\csv\test.csv') 
  63. False 
  64. >>> os.path.isfile('c:\csv\') 
  65. False 
  66.  
  67. 9.os.path.isdir(path) 
  68. 如果path是一个存在的目录,则返回True。否则返回False。 
  69.  
  70. >>> os.path.isdir('c:\') 
  71. True 
  72. >>> os.path.isdir('c:\csv\') 
  73. False 
  74. >>> os.path.isdir('c:\windows\test.csv') 
  75. False 
  76.  
  77. 10.os.path.join(path1[, path2[, ...]]) 
  78. 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。 
  79.  
  80. >>> os.path.join('c:\', 'csv', 'test.csv') 
  81. 'c:\csv\test.csv' 
  82. >>> os.path.join('windows emp', 'c:\', 'csv', 'test.csv') 
  83. 'c:\csv\test.csv' 
  84. >>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c') 
  85. '/home/aa/bb/c' 
  86.  
  87. 11.os.path.normcase(path) 
  88. 在Linux和Mac平台上,该函数会原样返回path,在windows平台上会将路径中所有字符转换为小写,并将所有斜杠转换为饭斜杠。 
  89.  
  90. >>> os.path.normcase('c:/windows\system32\') 
  91. 'c:\windows\system32\' 
  92.  
  93. 12.os.path.normpath(path) 
  94. 规范化路径。 
  95.  
  96. >>> os.path.normpath('c://windows\System32\../Temp/') 
  97. 'c:\windows\Temp' 
  98.  
  99. 12.os.path.splitdrive(path) 
  100. 返回(drivername,fpath)元组 
  101.  
  102. >>> os.path.splitdrive('c:\windows') 
  103. ('c:', '\windows') 
  104.  
  105. 13.os.path.splitext(path) 
  106. 分离文件名与扩展名;默认返回(fname,fextension)元组,可做分片操作 
  107.  
  108. >>> os.path.splitext('c:\csv\test.csv') 
  109. ('c:\csv\test', '.csv') 
  110.  
  111. 14.os.path.getsize(path) 
  112. 返回path的文件的大小(字节)。 
  113.  
  114. >>> os.path.getsize('c:\boot.ini') 
  115. 299L 
  116.  
  117. 15.os.path.getatime(path) 
  118. 返回path所指向的文件或者目录的最后存取时间。 
  119.  
  120. 16.os.path.getmtime(path) 
  121. 返回path所指向的文件或者目录的最后修改时间