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


Posted in Python onSeptember 19, 2016

本文实例讲述了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中global用法实例分析
Apr 30 Python
通过数据库对Django进行删除字段和删除模型的操作
Jul 21 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
Nov 04 Python
基于python yield机制的异步操作同步化编程模型
Mar 18 Python
详解python基础之while循环及if判断
Aug 24 Python
python中文乱码不着急,先看懂字节和字符
Dec 20 Python
python绘制热力图heatmap
Mar 23 Python
详解Python进阶之切片的误区与高级用法
Dec 24 Python
python虚拟环境完美部署教程
Aug 06 Python
python进阶之自定义可迭代的类
Aug 20 Python
python继承threading.Thread实现有返回值的子类实例
May 02 Python
python中pop()函数的语法与实例
Dec 01 Python
Python实现批量更换指定目录下文件扩展名的方法
Sep 19 #Python
Python按行读取文件的实现方法【小文件和大文件读取】
Sep 19 #Python
Python遍历目录并批量更换文件名和目录名的方法
Sep 19 #Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 #Python
Python自定义进程池实例分析【生产者、消费者模型问题】
Sep 19 #Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
Sep 19 #Python
Python操作Access数据库基本步骤分析
Sep 19 #Python
You might like
详解PHP中的序列化、反序列化操作
2017/03/21 PHP
PHP实现的最大正向匹配算法示例
2017/12/19 PHP
List Installed Software Features
2007/06/11 Javascript
js实现iframe动态调整高度的代码
2008/01/06 Javascript
JQuery中的ready函数冲突的解决方法
2010/05/17 Javascript
javascript学习笔记(七)利用javascript来创建和存储cookie
2011/04/08 Javascript
JavaScript版DateAdd和DateDiff函数代码
2012/03/01 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
根据输入邮箱号跳转到相应登录地址的解决方法
2016/12/13 Javascript
js获取浏览器和屏幕的各种宽度高度
2017/02/22 Javascript
JavaScript对JSON数据进行排序和搜索
2017/07/24 Javascript
jQuery EasyUI window窗口使用实例代码
2017/12/25 jQuery
vue + webpack如何绕过QQ音乐接口对host的验证详解
2018/07/01 Javascript
Layui组件Table绑定行点击事件和获取行数据的方法
2018/08/19 Javascript
解决vue打包css文件中背景图片的路径问题
2018/09/03 Javascript
JavaScript之实现一个简单的Vue示例
2019/01/17 Javascript
[01:18:33]Secret vs VGJ.S Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
python如何压缩新文件到已有ZIP文件
2018/03/14 Python
Python基于递归实现电话号码映射功能示例
2018/04/13 Python
python爬虫之urllib,伪装,超时设置,异常处理的方法
2018/12/19 Python
Python三元运算与lambda表达式实例解析
2019/11/30 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
2019/11/30 Python
python 求10个数的平均数实例
2019/12/16 Python
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
设计师大码女装:11 Honoré
2020/05/03 全球购物
幼师专业毕业生自荐信
2013/09/29 职场文书
护士专业推荐信
2013/11/02 职场文书
技校毕业生的自我评价
2013/12/27 职场文书
幼儿运动会邀请函
2014/01/17 职场文书
2014年大学生就业规划书
2014/04/04 职场文书
职务说明书范文
2014/05/07 职场文书
个人投资合作协议书
2014/10/12 职场文书
入党函调证明材料
2015/06/19 职场文书
幼儿园迎新生欢迎词
2015/09/30 职场文书
MongoDB日志切割的三种方式总结
2021/09/15 MongoDB
python中pycryto实现数据加密
2022/04/29 Python