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 pdb调试方法分享
Jan 21 Python
Python的Django框架中的URL配置与松耦合
Jul 15 Python
django中模板的html自动转意方法
May 27 Python
transform python环境快速配置方法
Sep 27 Python
pycharm执行python时,填写参数的方法
Oct 29 Python
python实现多层感知器MLP(基于双月数据集)
Jan 18 Python
python编写微信公众号首图思路详解
Dec 13 Python
关于pytorch中全连接神经网络搭建两种模式详解
Jan 14 Python
在Tensorflow中实现梯度下降法更新参数值
Jan 23 Python
python小白切忌乱用表达式
May 29 Python
详解pytorch中squeeze()和unsqueeze()函数介绍
Sep 03 Python
Python列表的深复制和浅复制示例详解
Feb 12 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 获得汉字拼音首字母的函数
2009/08/01 PHP
PHP正则表达式之定界符和原子介绍
2012/10/05 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
2013/06/29 PHP
完美解决在ThinkPHP控制器中命名空间的问题
2017/05/05 PHP
js调用flash的效果代码
2008/04/26 Javascript
一个简单的js动画效果代码
2010/07/20 Javascript
jQuery避免$符和其他JS库冲突的方法对比
2014/02/20 Javascript
JQuery实现DIV其他动画效果的简单实例
2016/09/18 Javascript
JavaScript实现Fly Bird小游戏
2016/12/15 Javascript
原生Javascript插件开发实践
2017/01/18 Javascript
详解JSONObject和JSONArray区别及基本用法
2017/10/25 Javascript
vue实现前进刷新后退不刷新效果
2018/01/26 Javascript
Vue中的vue-resource示例详解
2018/11/02 Javascript
vue+element 模态框表格形式的可编辑表单实现
2019/06/07 Javascript
js 实现watch监听数据变化的代码
2019/10/13 Javascript
python输出当前目录下index.html文件路径的方法
2015/04/28 Python
Python实现配置文件备份的方法
2015/07/30 Python
Python实现简单字典树的方法
2016/04/29 Python
详解 Python 与文件对象共事的实例
2017/09/11 Python
Python中对象的引用与复制代码示例
2017/12/04 Python
scrapy spider的几种爬取方式实例代码
2018/01/25 Python
简单实现python聊天程序
2018/04/01 Python
Python实现多条件筛选目标数据功能【测试可用】
2018/06/13 Python
python学生管理系统开发
2019/01/30 Python
python list转置和前后反转的例子
2019/08/26 Python
python 生成器和迭代器的原理解析
2019/10/12 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
2019/12/10 Python
Python调用C/C++的方法解析
2020/08/05 Python
CSS3 文字动画效果
2020/11/12 HTML / CSS
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
印度最好的在线药品订购网站:PharmEasy
2018/11/30 全球购物
圣彼得堡鲜花配送:Semicvetic
2020/09/15 全球购物
大学生水果店创业计划书
2014/01/28 职场文书
医药营销个人求职信
2014/04/12 职场文书
2015年母亲节寄语
2015/03/23 职场文书
慈善献爱心倡议书
2015/04/27 职场文书