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中的元类(metaclass)
Feb 14 Python
Python实现文件按照日期命名的方法
Jul 09 Python
python中zip()方法应用实例分析
Apr 16 Python
python3使用pyqt5制作一个超简单浏览器的实例
Oct 19 Python
python3 kmp 字符串匹配的方法
Jul 07 Python
简单了解python代码优化小技巧
Jul 08 Python
Python爬虫谷歌Chrome F12抓包过程原理解析
Jun 04 Python
Pycharm如何自动生成头文件注释
Nov 14 Python
Python数据分析库pandas高级接口dt的使用详解
Dec 11 Python
python自动生成sql语句的脚本
Feb 24 Python
Python极值整数的边界探讨分析
Sep 15 Python
python标准库ElementTree处理xml
May 20 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
天使彦史上最神还原,性别曝光的那一刻,百万网友恋爱了
2020/03/02 国漫
PHP mail 通过Windows的SMTP发送邮件失败的解决方案
2009/05/27 PHP
第4章 数据处理-php正则表达式-郑阿奇(续)
2011/07/04 PHP
PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
2015/12/24 PHP
Yii rules常用规则示例
2016/03/15 PHP
两个select之间option的互相添加操作(jquery实现)
2009/11/12 Javascript
jquery解析xml字符串示例分享
2014/03/25 Javascript
如何用JavaScript定义一个类
2014/09/12 Javascript
js+jquery常用知识点汇总
2015/03/03 Javascript
深入理解JavaScript中的call、apply、bind方法的区别
2016/05/30 Javascript
jQuery Easyui学习教程之实现datagrid在没有数据时显示相关提示内容
2016/07/09 Javascript
JQuery对ASP.NET MVC数据进行更新删除
2016/07/13 Javascript
jQuery简单实现title提示效果示例
2016/08/01 Javascript
解析Vue2.0双向绑定实现原理
2017/02/23 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
基于vue中css预加载使用sass的配置方式详解
2018/03/13 Javascript
vue实现PC端录音功能的实例代码
2019/06/05 Javascript
JavaScript解析JSON数据示例
2019/07/16 Javascript
对layui中table组件工具栏的使用详解
2019/09/19 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
[44:15]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第二局
2016/03/06 DOTA
如何优雅地改进Django中的模板碎片缓存详解
2018/07/04 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
2020/03/10 Python
Python实现钉钉/企业微信自动打卡的示例代码
2021/02/02 Python
35款精致的 CSS3 和 HTML5 网页模板 推荐
2012/08/03 HTML / CSS
特步官方商城:Xtep
2017/03/21 全球购物
澳大利亚领先的在线机械五金、园艺和存储专家:Edisons
2018/03/24 全球购物
酒吧员工的岗位职责
2013/11/26 职场文书
小露珠教学反思
2014/04/30 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
放飞梦想演讲稿800字
2014/08/26 职场文书
工作疏忽、懈怠的检讨书
2014/09/11 职场文书
个人反四风对照检查材料思想汇报
2014/09/23 职场文书
2015年建筑工程工作总结
2015/05/13 职场文书
公司开业的祝贺语大全(60条)
2019/07/05 职场文书
一文读懂navicat for mysql基础知识
2021/05/31 MySQL