python打包压缩、读取指定目录下的指定类型文件


Posted in Python onApril 12, 2018

下面通过代码给大家介绍python打包压缩指定目录下的指定类型文件,具体代码如下所示:

import os
import datetime
import tarfile
import fnmatch
def find_spe_file(root, patterns=['*'], non_cludedir=[]):
  for root, dirnames, filenames in os.walk(root):
    for pattern in patterns:
      for filename in filenames:
        if fnmatch.fnmatch(filename, pattern):
          #print(filename)
          yield os.path.join(root, filename)
def cre_tarfile():
  args = ["*.jpg", "*.jepg"]
  now = datetime.datetime.now().strftime("%Y_%m_%d_%H_%M_%S")
  filename = "all_img_{0}.tar.gz".format(now)
  with tarfile.open(filename, mode='w:gz') as f:
    for item in find_spe_file(".", args):
      #print(item)
      f.add(item)
if __name__ == "__main__":
  cre_tarfile()

 下面看下使用python读取指定目录下的指定类型文件

  准备工作:设置指定的路径,使用os.listdir() 方法获取路径下所有的文件

import os
path = "d:\\data"              # 设置路径
dirs = os.listdir(path)          # 获取指定路径下的文件

循环判断:使用os.path.splitext()方法筛选出指定类型的文件

for i in dirs:               # 循环读取路径下的文件并筛选输出
  if os.path.splitext(i)[1] == ".csv":  # 筛选csv文件
    print i              # 输出所有的csv文件

案例展示:

# encoding: utf-8
import os
path = "d:\\data"              # 设置路径
dirs = os.listdir(path)          # 获取指定路径下的文件
for i in dirs:               # 循环读取路径下的文件并筛选输出
  if os.path.splitext(i)[1] == ".csv":  # 筛选csv文件
    print i              # 输出所有的csv文件

运行结果:

20160904.csv
20160911.csv
20160918.csv
20160925.csv
20161002.csv
20161009.csv

函数解释:

os.listdir(path)

函数功能:返回一个列表,其中包含由path指定的目录中的条目的名称。 列表是任意顺序的。它不包括特殊条目'.‘ 和'..‘,即使它们存在于目录中。

import os, sys
path = "d:\\tmp\\"
dirs = os.listdir( path )
for file in dirs:
  print (file)

运行结果:

Applicationdocs.docx
test.java
book.zip
foo.txt
Java Multiple Inheritance.html
Java Multiple Inheritance_files
java.ppt
ParallelPortViewer

os.path.splitext(path)

函数功能:分离文件名与扩展名;默认返回(fname,fextension)元组,可做切片操作

import os, sys
path = 'c:\\csv\\test.csv'
print os.path.splitext(path)

运行结果:

('c:\\csv\\test', '.csv')

总结

以上所述是小编给大家介绍的python打包压缩、读取指定目录下的指定类型文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
浅析Python中的多进程与多线程的使用
Apr 07 Python
Python实现监控程序执行时间并将其写入日志的方法
Jun 30 Python
详解常用查找数据结构及算法(Python实现)
Dec 09 Python
Python建立Map写Excel表实例解析
Jan 17 Python
Python3.6笔记之将程序运行结果输出到文件的方法
Apr 22 Python
python Pandas如何对数据集随机抽样
Jul 29 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 Python
Python3搭建http服务器的实现代码
Feb 11 Python
Python实现加密接口测试方法步骤详解
Jun 05 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
Jul 01 Python
python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法
Nov 05 Python
python对文档中元素删除,替换操作
Apr 02 Python
pandas全表查询定位某个值所在行列的方法
Apr 12 #Python
Python Pandas找到缺失值的位置方法
Apr 12 #Python
Pandas 数据框增、删、改、查、去重、抽样基本操作方法
Apr 12 #Python
dataframe设置两个条件取值的实例
Apr 12 #Python
使用python编写监听端
Apr 12 #Python
Python实现针对给定单链表删除指定节点的方法
Apr 12 #Python
pandas系列之DataFrame 行列数据筛选实例
Apr 12 #Python
You might like
php中取得文件的后缀名?
2012/02/20 PHP
php使用Jpgraph绘制柱形图的方法
2015/06/10 PHP
php+ajax登录跳转登录实现思路
2016/07/31 PHP
Yii2 加载css、js 载静态资源的方法
2017/03/10 PHP
用javascript做拖动布局的思路
2008/05/31 Javascript
jQuery动态添加删除select项(实现代码)
2013/09/03 Javascript
js中关于一个分号的崩溃示例
2013/11/11 Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
2013/12/12 Javascript
javascript中的throttle和debounce浅析
2014/06/06 Javascript
3种js实现string的substring方法
2015/11/09 Javascript
jQuery设置Cookie及删除Cookie实例分析
2016/04/15 Javascript
BootStrap使用file-input插件上传图片的方法
2016/09/05 Javascript
微信小程序 flex实现导航实例详解
2017/04/26 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
2018/03/06 Javascript
vue自定义键盘信息、监听数据变化的方法示例【基于vm.$watch】
2019/03/16 Javascript
python命令行参数解析OptionParser类用法实例
2014/10/09 Python
python实现根据窗口标题调用窗口的方法
2015/03/13 Python
基于Python实现文件大小输出
2016/01/11 Python
pycham查看程序执行的时间方法
2018/11/29 Python
情人节快乐! python绘制漂亮玫瑰
2020/08/18 Python
Python面向对象封装操作案例详解 II
2020/01/02 Python
python读取配置文件方式(ini、yaml、xml)
2020/04/09 Python
Django表单提交后实现获取相同name的不同value值
2020/05/14 Python
在主流系统之上安装Pygame的方法
2020/05/20 Python
浅谈PyTorch中in-place operation的含义
2020/06/27 Python
解决Keras中循环使用K.ctc_decode内存不释放的问题
2020/06/29 Python
H5 video poster属性设置视频封面的方法
2020/05/25 HTML / CSS
亚历山大·王官网:Alexander Wang
2017/06/23 全球购物
JACK & JONES英国官方网站:欧洲领先的男装生产商
2017/09/27 全球购物
实现向右循环移位
2014/07/31 面试题
党风廉政建设责任书
2014/04/14 职场文书
奥巴马英文演讲稿
2014/05/15 职场文书
物业总经理助理岗位职责
2014/06/29 职场文书
2014党员四风对照检查材料思想汇报
2014/09/17 职场文书
幼师个人总结范文
2015/02/28 职场文书
详解如何在Canvas中添加事件的方法
2021/04/17 Javascript