python获取文件后缀名及批量更新目录下文件后缀名的方法


Posted in Python onNovember 11, 2014

本文实例讲述了python获取文件后缀名及批量更新目录下文件后缀名的方法。分享给大家供大家参考。具体实现方法如下:

1. 获取文件后缀名:

#!/usr/bin/python

import os

dict = {}

for d, fd, fl in os.walk('/home/ahda/Program/'):

        for f in fl:

                sufix = os.path.splitext(f)[1][1:]

                if dict.has_key(sufix):

                        dict[sufix] += 1

                else:

                        dict[sufix] = 1

for item in dict.items():

        print "%s : %s" % item

这里的关键是os.path.splitext()
如abc/ef.g.h ,这里获取到的是h

2. python查找遍历指定文件路径下指定后缀名的文件实例:

import os

import sys

import os.path

for dirpath, dirnames, filenames in os.walk(startdir):

        for filename in filenames:

            if os.path.splitext(filename)[1] == '.txt':

               filepath = os.path.join(dirpath, filename)

               #print("file:" + filepath)

               input_file = open(filepath)

               text = input_file.read()

               input_file.close()

               

               output_file = open( filepath, 'w')

               output_file.write(text)

               output_file.close()

3. 批量重命名目录中的文件后缀实例:
import os

def swap_extensions(dir, before, after):

    if before[:1] != '.': #如果参数中的后缀名没有'.'则加上

        before = '.' + before

    thelen = -len(before)

    if after[:1] != '.':

        after = '.' + after

    for path, subdir, files in os.walk(dir):

        for oldfile in files:

            if oldfile[thelen:] == before:

                oldfile = os.path.join(path, oldfile)

                newfile = oldfile[:thelen] + after

                os.rename(oldfile, newfile)

                print oldfile +' changed to ' + newfile

if __name__ == '__main__':

    import sys

    if len(sys.argv) != 4:

        print 'Usage:swap_extension.py rootdir before after'

        sys.exit(1)

    swap_extensions(sys.argv[1], sys.argv[2], sys.argv[3])

例子:将e:/py/test目录下.php结尾的文件重命名为.py
 
E:py>python_cook e:/py/test .php .py
e:/py/testtest.php changed to e:/py/testtest.py
e:/py/test1.php changed to e:/py/test1.py
e:/py/test2.php changed to e:/py/test2.py

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python实现的简单文本类游戏实例
Apr 28 Python
python 系统调用的实例详解
Jul 11 Python
python实现对excel进行数据剔除操作实例
Dec 07 Python
python3 实现验证码图片切割的方法
Dec 07 Python
Python搭建Spark分布式集群环境
Jul 05 Python
Python更新所有已安装包的操作
Feb 13 Python
Python 安装 virturalenv 虚拟环境的教程详解
Feb 21 Python
解决windows下python3使用multiprocessing.Pool出现的问题
Apr 08 Python
python安装和pycharm环境搭建设置方法
May 27 Python
python跨文件使用全局变量的实现
Nov 17 Python
Scrapy实现模拟登录的示例代码
Feb 21 Python
Python 绘制多因子柱状图
May 11 Python
python实现在目录中查找指定文件的方法
Nov 11 #Python
Python实现list反转实例汇总
Nov 11 #Python
用python实现面向对像的ASP程序实例
Nov 10 #Python
python求列表交集的方法汇总
Nov 10 #Python
python实现删除文件与目录的方法
Nov 10 #Python
Python装饰器decorator用法实例
Nov 10 #Python
python中list循环语句用法实例
Nov 10 #Python
You might like
详细解读PHP中接口的应用
2015/08/12 PHP
在php中设置session用memcache来存储的方法总结
2016/01/14 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
javascript appendChild,innerHTML,join性能比较代码
2009/08/29 Javascript
当鼠标移动到图片上时跟随鼠标显示放大的图片效果
2013/06/06 Javascript
浅析document.createDocumentFragment()与js效率
2013/07/08 Javascript
jquery实现焦点图片随机切换效果的方法
2015/03/12 Javascript
jquery遍历函数siblings()用法实例
2015/12/24 Javascript
JavaScript程序中的流程控制语句用法总结
2016/05/23 Javascript
JavaScript之json_动力节点Java学院整理
2017/06/29 Javascript
javaScript实现滚动条事件详解
2020/03/24 Javascript
深入解析vue 源码目录及构建过程分析
2019/04/24 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
2019/05/21 Javascript
[03:02]2014DOTA2西雅图邀请赛 让队员自己告诉你DK NAVI备战情况
2014/07/08 DOTA
[03:18]DOTA2亚洲邀请赛小组赛第一日 RECAP赛事回顾
2015/01/30 DOTA
忘记ftp密码使用python ftplib库暴力破解密码的方法示例
2014/01/22 Python
菜鸟使用python实现正则检测密码合法性
2016/01/05 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
CSS3 text shadow字体阴影效果
2016/01/08 HTML / CSS
南非最大的花卉和送礼服务:NetFlorist
2017/09/13 全球购物
荷兰鞋子在线:Nelson Schoenen
2017/12/25 全球购物
Hobbs官方网站:英国奢华女性时尚服装
2020/02/22 全球购物
SNIDEL官网:日本VIVI杂志人气少女第一品牌
2020/03/12 全球购物
建筑自我鉴定
2013/10/19 职场文书
五十岁生日宴会答谢词
2014/01/15 职场文书
商务考察邀请函范文
2014/01/21 职场文书
物理系毕业生自荐书范文
2014/02/22 职场文书
交通事故私了协议书
2014/04/16 职场文书
大型活动组织方案
2014/05/10 职场文书
艺术设计专业求职自荐信
2014/05/19 职场文书
学生不讲诚信检讨书
2014/09/29 职场文书
2014年社区工会工作总结
2014/12/18 职场文书
学雷锋献爱心活动总结
2015/05/11 职场文书
pycharm debug 断点调试心得分享
2021/04/16 Python
Win11如何修改dns?Win11修改dns图文教程
2022/01/18 数码科技
Mysql数据库表中为什么有索引却没有提高查询速度
2022/02/24 MySQL