欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python 目录和文件操作

程序员文章站 2022-05-15 08:46:11
...

os.path.abspath(path)

  • 返回文件或目录的绝对路径,包含path
In [2]: import os
In [8]: os.path.abspath("JSONPaser.py")                                         
Out[8]: '/Users/lpf/Desktop/Python/src/JSONPaser.py'

os.path.basename(path)

  • 返回路径中的最后一个文件或目录名
In [41]: os.path.basename("/Users/lpf/Desktop/Python/src/testLink.py")                                 
Out[41]: 'testLink.py'

os.path.commonpath(paths)

  • 返回所有路径的最长相同路径
In [9]: os.path.commonpath(['/usr/lib', '/usr/local/lib'])                                             
Out[9]: '/usr'

os.path.commonprefix(list)

  • 返回所有路径的最长相同路径字符串
In [10]: os.path.commonprefix(['/usr/lib', '/usr/local/lib'])                                          
Out[10]: '/usr/l'

os.path.dirname(path)

  • 提取路径名
In [11]: os.path.dirname("/Users/lpf/Desktop/Python/src/JSONPaser.py")                                 
Out[11]: '/Users/lpf/Desktop/Python/src'

os.path.exists(path)

  • 判断路径或文件是否存在
  • 返回逻辑值
In [12]: os.path.exists("/Users/lpf/Desktop/Python/src/JSONPaser.py")                                  
Out[12]: True

In [13]: os.path.exists("JSONPaser.py")                                                                
Out[13]: True

os.path.getsize(path)

  • 返回文件大小(bytes)
In [15]: os.path.getsize("JSONPaser.py")                                                               
Out[15]: 114

os.path.isabs(path)

  • 判断路径是否为绝对路径
In [16]: os.path.isabs("JSONPaser.py")                                                                 
Out[16]: False

In [17]: os.path.isabs("/Users/lpf/Desktop/Python/src/JSONPaser.py")                                   
Out[17]: True

os.path.isfile(path)

  • 判断是否为文件
In [18]: os.path.isfile("/Users/lpf/Desktop/Python/src/JSONPaser.py")                                  
Out[18]: True

os.path.isdir(path)

  • 判断是否为目录
In [19]: os.path.isdir("/Users/lpf/Desktop/Python/src/JSONPaser.py")                                   
Out[19]: False

In [20]: os.path.isdir("/Users/lpf/Desktop/Python/src")                                                
Out[20]: True

os.path.islink(path)

  • 判断是否是一个符号链接
In [22]: os.path.islink("/Users/lpf/Desktop/Python/src/JSONPaser.py")                                  
Out[22]: False

In [23]: os.path.islink("/Users/lpf/Desktop/Python/src/testLink.py")                                   
Out[23]: True

os.path.join(path, *paths)

  • 以用户友好的形式连接路径字符串为一个完整的路径
    注意:可以自适应不同的操作系统
In [24]: os.path.join("/Users/lpf/Desktop/Python/src","testLink.py")                                   
Out[24]: '/Users/lpf/Desktop/Python/src/testLink.py'

os.path.normpath(path)

  • 压缩路径名为最简路径名,去除其中冗余的路径
In [26]: os.path.normpath("/Users/lpf/Desktop/Python/src/////testLink.py")                             
Out[26]: '/Users/lpf/Desktop/Python/src/testLink.py'

In [27]: os.path.normpath("/Users/lpf/Desktop/Python/src/.////testLink.py")                            
Out[27]: '/Users/lpf/Desktop/Python/src/testLink.py'

os.path.realpath(path)

  • 返回一个(链接)文件或路径的原路径
    注意:主要针对链接文件或路径
In [28]: os.path.realpath("/Users/lpf/Desktop/Python/src/testLink.py")                                 
Out[28]: '/Users/lpf/Desktop/Python/src/JSONPaser.py'

os.path.relpath(path, start=os.curdir)

  • 返回相对于start的相对路径名,start的默认值为当前路径
In [29]: os.path.relpath("/Users/lpf/Desktop/Python/src/testLink.py")                                  
Out[29]: 'testLink.py'

In [30]: os.path.relpath("/Users/lpf/Desktop/Python/src/testLink.py", start = "/Users/lpf/Desktop")    
Out[30]: 'Python/src/testLink.py'

In [31]: os.path.relpath("testLink.py", start = "/Users/lpf/Desktop")                                  
Out[31]: 'Python/src/testLink.py'

os.path.samefile(path1, path2)

  • 如果path1path2是同一个文件或目录,返回True
In [32]: path1 = "testLink.py"                                                                         

In [33]: path2 = "/Users/lpf/Desktop/Python/src/JSONPaser.py"                                          

In [34]: os.path.samefile(path1, path2)                                                                
Out[34]: True

注意:path1是path2的符号链接

os.path.sameopenfile(fp1, fp2)

  • 如果fp1fp2是打开同一个文件的文件描述符,则返回True

os.path.split(path)

  • 返回一个元组(head, tail)。
  • head是文件路径名;tailpath的最后一个文件(或目录)名
In [35]: os.path.split("/Users/lpf/Desktop/Python/src/testLink.py")                                    
Out[35]: ('/Users/lpf/Desktop/Python/src', 'testLink.py')

In [36]: os.path.split("/Users/lpf/Desktop/Python/src")                                                
Out[36]: ('/Users/lpf/Desktop/Python', 'src')

os.path.splitext(path)

  • 分割路径名为:prefixsuffix
In [39]: os.path.splitext("/Users/lpf/Desktop/Python/src/testLink.py")                                 
Out[39]: ('/Users/lpf/Desktop/Python/src/testLink', '.py')

In [40]: os.path.splitext("testLink.py")                                                               
Out[40]: ('testLink', '.py')
相关标签: Python 基本函数