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 相关文章推荐
教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
Jul 04 Python
Django中模版的子目录与include标签的使用方法
Jul 16 Python
python使用arcpy.mapping模块批量出图
Mar 06 Python
老生常谈Python基础之字符编码
Jun 14 Python
python3.4下django集成使用xadmin后台的方法
Aug 15 Python
python3实现公众号每日定时发送日报和图片
Feb 24 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 Python
解决pip install xxx报错SyntaxError: invalid syntax的问题
Nov 30 Python
基于python二叉树的构造和打印例子
Aug 09 Python
3行Python代码实现图像照片抠图和换底色的方法
Oct 10 Python
PyQt5多线程防卡死和多窗口用法的实现
Sep 15 Python
解决pytorch 保存模型遇到的问题
Mar 03 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
模仿OSO的论坛(一)
2006/10/09 PHP
yii框架源码分析之创建controller代码
2011/06/28 PHP
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
php生成随机颜色的方法
2014/11/13 PHP
php 多文件上传的实现实例
2016/10/23 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
2019/05/27 PHP
PHP学习记录之常用的魔术常量详解
2019/12/12 PHP
FF火狐下获取一个元素同类型的相邻元素实现代码
2012/12/15 Javascript
JS实现字体选色板实例代码
2013/11/20 Javascript
JQuery1.8 判断元素是否绑定事件的方法
2014/07/10 Javascript
canvas知识总结
2017/01/25 Javascript
React-router 4 按需加载的实现方式及原理详解
2017/05/25 Javascript
BootStrap selectpicker后台动态绑定数据
2017/06/01 Javascript
Angular4表单验证代码详解
2017/09/03 Javascript
5 种JavaScript编码规范
2018/01/30 Javascript
JavaScript实现网页tab栏效果制作
2020/11/20 Javascript
微信小程序自定义modal弹窗组件的方法详解
2020/12/20 Javascript
进一步探究Python的装饰器的运用
2015/05/05 Python
Python中按键来获取指定的值
2019/03/02 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
2019/05/31 Python
python使用Matplotlib改变坐标轴的默认位置
2019/10/18 Python
解决Tensorflow 使用时cpu编译不支持警告的问题
2020/02/03 Python
Python实现链表反转的方法分析【迭代法与递归法】
2020/02/22 Python
python如何使用代码运行助手
2020/07/03 Python
简单的HTML5初步入门教程
2015/09/29 HTML / CSS
大学生简历中个人的自我评价
2013/10/06 职场文书
给客户的道歉信
2014/01/13 职场文书
出纳工作岗位责任制
2014/02/02 职场文书
技能比赛获奖感言
2014/02/14 职场文书
创先争优公开承诺书
2014/08/30 职场文书
医药公司开票员岗位职责
2015/04/15 职场文书
企业安全生产规章制度
2015/08/06 职场文书
goland 清除所有的默认设置操作
2021/04/28 Golang
goland设置颜色和字体的操作
2021/05/05 Golang
利用python进行数据加载
2021/06/20 Python