Python文件与文件夹常见基本操作总结

993次阅读  |  发布于5年以前

本文实例讲述了Python文件与文件夹常见基本操作。分享给大家供大家参考,具体如下:

1、判断文件(夹)是否存在。


    os.path.exists(pathname)

2、判断路径名是否为文件。


    os.path.isfile(pathname)

3、判断路径名是否为目录。


    os.path.isdir(pathname)

4、创建文件。


    os.mknod(filename)  #windows下不可用
    open(filename, "w")  #记得要关闭

5、复制文件。


    shutil.copyfile("oldfile", "newfile")  #oldfile和newfile都只能是文件
    shutil.copy("oldfile", "newfile")  #oldfile只能是文件,newfile可以是文件,也可以是目标目录

6、删除文件。


    os.remove(filename)

7、清空文件。


    file = open("test.txt", w)
    file.seek(0)
    file.truncate() #注意文件指针的位置
    file.close()

8、创建目录。


    os.mkdir(pathname)    #创建单级目录
    os.makedirs(pathname)   #递归创建多级目录

9、复制目录。


    shutil.copytree("olddir", "newdir")
    #olddir和newdir都只能是目录,且newdir必须不存在

10、重命名文件或目录。


    os.rename(oldname, newname)

11、移动文件或目录。


    shutil.move(oldpath, newpath)

12、删除目录。


    os.rmdir("dir")   #不能删除非空目录
    '''
    #可以删除非空目录,目录打开时也能删除
    #约等于'rd /Q /S dir'
    '''
    shutil.rmtree("dir")

12.1、清空目录。


    #encoding=utf-8
    #适用于python3.5+
    import os, sys, time, shutil
    #清空目录
    def ClearDir(dir):
      print('ClearDir ' + dir + '...')
      for entry in os.scandir(dir):
        if entry.name.startswith('.'):
          continue
        if entry.is_file():
          os.remove(entry.path)  #删除文件
        else:
          shutil.rmtree(entry.path)  #删除目录

13、切换目录。


    os.chdir(newpath)

14、open常用模式。

'r': 只读(缺省。如果文件不存在,则抛出错误。)
'w': 只写(如果文件不存在,则自动创建文件。)
'a': 追加
'r+': 读写

15、由全路径名的到路径和文件名。


    >>> pathfile = r'D:\abc\def\ghi.txt'
    >>> os.path.dirname(pathfile)
    'D:\\abc\\def'
    >>> os.path.basename(pathfile)
    'ghi.txt'

16、获取文件大小。


    os.path.getsize(pathfile)
    #单位为字节(Byte)

17、获取当前文件目录绝对路径。


    import os, sys
    if __name__ == "__main__":
      os.chdir('E:\\')
      print(sys.path[0])
      print(os.path.abspath('.'))
      print(os.path.dirname(os.path.abspath(__file__)))

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8