python实现操作文件(文件夹)


Posted in Python onOctober 31, 2019

本文实例为大家分享了pyhton操作文件的具体代码,供大家参考,具体内容如下

copy_file

功能:将某个文件夹下的所有文件(文件夹)复制到另一个文件夹

#! python 3
# -*- coding:utf-8 -*-
# Autor: GrayMac
import shutil
import os

basefileclass = 'basefile'
#sourcefile:源文件路径 fileclass:源文件夹 destinationfile:目标文件夹路径
def copy_file(sourcefile,fileclass,destinationfile):
  #遍历目录和子目录
  for filenames in os.listdir(sourcefile):
    #取得文件或文件名的绝对路径
    filepath = os.path.join(sourcefile,filenames)
    #判断是否为文件夹
    if os.path.isdir(filepath):
      if fileclass == basefileclass :
        copy_file(filepath,fileclass + '/' + filenames,destinationfile + '/' + filenames)
      else :
        copy_file(filepath,fileclass,destinationfile + '/' + filenames)
    #判断是否为文件
    elif os.path.isfile(filepath):
     print('Copy %s'% filepath +' To ' + destinationfile)
     #如果无文件夹则重新创建
     if not os.path.exists(destinationfile):
       os.makedirs(destinationfile)
     shutil.copy(filepath,destinationfile)
        
copy_file(sourcefile,basefileclass,destinationfile)

zip_file

功能:将某个文件夹下面的所有文件(文件夹)压缩

#! python 3
# -*- coding:utf-8 -*-
# Autor: GrayMac
import zipfile
import os
#dirpath:压缩源文件路径 outpath:输出文件夹路径 outname:输出压缩文件名
basefilepath = 'basefile/'
def zip_file(dirpath,outpath,outname):
  print('Start ZIP ' + dirpath + ' To ' + outname)
  zip = zipfile.ZipFile(outpath + outname,"w",zipfile.ZIP_DEFLATED)
  for path,dirnames,filenames in os.walk(dirpath):
    # 去掉目标跟路径,只对目标文件夹下边的文件及文件夹进行压缩
    fpath = path.replace(dirpath,basefilepath)
    for filename in filenames:
      zip.write(os.path.join(path,filename),os.path.join(fpath,filename))
  zip.close()
  print('ZIP' + outname + 'successed !')
zip_file(dirpath,outpath,outname)

del_file

功能:将某个文件夹下面的所有文件(文件夹)删除

#! python 3
# -*- coding:utf-8 -*-
# Autor: GrayMac
import shutil
import os
#path_data 删除文件夹路径
#os.listdir(path_data) 返回一个列表,里面是当前目录下面的所有东西的相对路径
#os.path.isfile(file_data) 判断是否为文件
#os.remove(file_data) 删除文件
#shutil.rmtree(file_data) 删除文件夹(非空)
def del_file(path_data):
  print('Start Delete : ' + path_data)
  for filenames in os.listdir(path_data) :
    file_data = path_data + "\\" + filenames#当前文件夹的下面的所有东西的绝对路径
    if os.path.isfile(file_data) :
      os.remove(file_data)
    else:
      shutil.rmtree(file_data)
  print('Delete successed !')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现socket端口重定向示例
Feb 10 Python
Python help()函数用法详解
Mar 11 Python
python密码错误三次锁定(实例讲解)
Nov 14 Python
python+matplotlib绘制旋转椭圆实例代码
Jan 12 Python
python使用pil库实现图片合成实例代码
Jan 20 Python
pandas通过索引进行排序的示例
Nov 16 Python
详解pandas如何去掉、过滤数据集中的某些值或者某些行?
May 15 Python
python使用HTMLTestRunner导出饼图分析报告的方法
Dec 30 Python
pycharm快捷键汇总
Feb 14 Python
Python几种常见算法汇总
Jun 02 Python
详解python的内存分配机制
May 10 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 Python
python用requests实现http请求代码实例
Oct 31 #Python
python zip()函数使用方法解析
Oct 31 #Python
python实现按首字母分类查找功能
Oct 31 #Python
利用python Selenium实现自动登陆京东签到领金币功能
Oct 31 #Python
python+Django实现防止SQL注入的办法
Oct 31 #Python
Python 爬虫实现增加播客访问量的方法实现
Oct 31 #Python
基于Python+Appium实现京东双十一自动领金币功能
Oct 31 #Python
You might like
PHP与MySQL开发的8个技巧小结
2010/12/17 PHP
PHP5中GD库生成图形验证码(有汉字)
2013/07/28 PHP
php中二维数组排序问题方法详解
2015/08/28 PHP
PHP中的静态变量及static静态变量使用详解
2015/11/05 PHP
PHP操作Postgresql封装类与应用完整实例
2018/04/24 PHP
在Laravel 中实现是否关注的示例
2019/10/22 PHP
javascript Array.sort() 跨浏览器下需要考虑的问题
2009/12/07 Javascript
JQuyer $.post 与 $.ajax 访问WCF ajax service 时的问题需要注意的地方
2011/09/20 Javascript
JS Map 和 List 的简单实现代码
2013/07/08 Javascript
JavaScript 作用域链解析
2014/11/13 Javascript
JavaScript 学习笔记之操作符
2015/01/14 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
利用jquery实现实时更新歌词的方法
2017/01/06 Javascript
Node.js中.pfx后缀文件的处理方法
2017/03/10 Javascript
微信小程序使用swiper组件实现层叠轮播图
2018/11/04 Javascript
原生JS实现随机点名项目的实例代码
2019/04/30 Javascript
解决Vue打包上线之后部分CSS不生效的问题
2019/11/12 Javascript
jQuery实现的上拉刷新功能组件示例
2020/05/01 jQuery
[00:52]黑暗之门更新 新英雄孽主驾临DOTA2
2016/08/24 DOTA
[02:03]完美世界DOTA2联赛10月30日赛事集锦
2020/10/31 DOTA
Python备份Mysql脚本
2008/08/11 Python
python操作MongoDB基础知识
2013/11/01 Python
python查询mysql中文乱码问题
2014/11/09 Python
Python模拟登录12306的方法
2014/12/30 Python
python二分查找算法的递归实现方法
2016/05/12 Python
python如何创建TCP服务端和客户端
2018/08/26 Python
Linux下安装python3.6和第三方库的教程详解
2018/11/09 Python
Python中三元表达式的几种写法介绍
2019/03/04 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
Python操作PostgreSql数据库的方法(基本的增删改查)
2020/12/29 Python
SQL Server面试题
2013/04/04 面试题
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
2014/03/16 面试题
团结演讲稿范文
2014/05/23 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
2014年班组长工作总结
2014/11/20 职场文书
班委竞选稿范文
2015/11/21 职场文书