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字符串的encode与decode研究心得乱码问题解决方法
Mar 23 Python
python从入门到精通(DAY 3)
Dec 20 Python
Python常用知识点汇总
May 08 Python
Python实现k-means算法
Feb 23 Python
使用pandas实现csv/excel sheet互相转换的方法
Dec 10 Python
Python 实现数组相减示例
Dec 27 Python
PyQt5实现简单的计算器
May 30 Python
Python基于pillow库实现生成图片水印
Sep 14 Python
python 决策树算法的实现
Oct 09 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
Jan 15 Python
如何用Python和JS实现的Web SSH工具
Feb 23 Python
python线程优先级队列知识点总结
Feb 28 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类中private属性继承问题分析
2012/11/01 PHP
php输出1000以内质数(素数)示例
2014/02/16 PHP
PHP的伪随机数与真随机数详解
2015/05/27 PHP
PHP执行普通shell命令流程解析
2020/08/24 PHP
JavaScript中的事件处理
2008/01/16 Javascript
firefo xml 读写实现js代码
2009/06/11 Javascript
js实现图片放大缩小功能后进行复杂排序的方法
2012/11/08 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
javascript使用正则控制input输入框允许输入的值方法大全
2014/06/19 Javascript
jQuery Validate表单验证深入学习
2015/12/18 Javascript
JQuery Ajax WebService传递参数的简单实例
2016/11/02 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
javascript中BOM基础知识总结
2017/02/14 Javascript
JS简单获取当前日期和农历日期的方法
2017/04/17 Javascript
简谈创建React Component的几种方式
2019/06/15 Javascript
微信小程序new Date()方法失效问题解决方法
2019/07/29 Javascript
[01:57]2016完美“圣”典风云人物:国士无双专访
2016/12/04 DOTA
python读写二进制文件的方法
2015/05/09 Python
用Python编写一个简单的CS架构后门的方法
2018/11/20 Python
numpy np.newaxis 的实用分享
2019/11/30 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
PyTorch使用cpu加载模型运算方式
2020/01/13 Python
浅谈sklearn中predict与predict_proba区别
2020/06/28 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
Tory Burch英国官方网站:美国时尚生活品牌
2017/12/06 全球购物
The North Face北面英国官网:美国著名户外品牌
2017/12/13 全球购物
台湾时尚彩瞳专门店:imeime
2019/08/16 全球购物
巴西购物网站:Submarino
2020/01/19 全球购物
银行个人求职自荐信范文
2013/12/16 职场文书
学习标兵获奖感言
2014/02/20 职场文书
四风问题党员个人整改措施
2014/10/27 职场文书
2015年教研室工作总结范文
2015/05/23 职场文书
2015年度公共机构节能工作总结
2015/05/26 职场文书
Mysql systemctl start mysqld报错的问题解决
2021/06/03 MySQL
使用vue判断当前环境是安卓还是IOS
2022/04/12 Vue.js
MySQL提取JSON字段数据实现查询
2022/04/22 MySQL