下面通过代码给大家介绍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打包压缩、读取指定目录下的指定类型文件,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。