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 由字符串函数名得到对应的函数(实例讲解)
Aug 10 Python
python3+PyQt5实现自定义分数滑块部件
Apr 24 Python
详解flask表单提交的两种方式
Jul 21 Python
Python 一句话生成字母表的方法
Jan 02 Python
浅谈python函数调用返回两个或多个变量的方法
Jan 23 Python
django框架model orM使用字典作为参数,保存数据的方法分析
Jun 24 Python
python 循环数据赋值实例
Dec 02 Python
python3 配置logging日志类的操作
Apr 08 Python
Python面向对象特殊属性及方法解析
Sep 16 Python
使用Python通过oBIX协议访问Niagara数据的示例
Dec 04 Python
python控制台打印log输出重复的解决方法
May 14 Python
TensorFlow中tf.batch_matmul()的用法
Jun 02 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
5.PHP的其他功能
2006/10/09 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
2011/08/09 PHP
PHP中如何判断AJAX提交的数据
2012/02/05 PHP
php字符串的替换,分割和连接方法
2016/05/23 PHP
基于PHP实现用户注册登录功能
2016/10/14 PHP
网站导致浏览器崩溃的原因总结(多款浏览器) 推荐
2010/04/15 Javascript
PHP 与 js的通信(via ajax,json)
2010/11/16 Javascript
jQuery EasyUI API 中文文档 - ComboTree组合树
2011/10/11 Javascript
JavaScript打开word文档的实现代码(c#)
2012/04/16 Javascript
jquery validate表单验证的基本用法入门
2016/01/18 Javascript
json格式数据的添加,删除及排序方法
2016/01/21 Javascript
BootStrap按钮标签及基本样式
2016/11/23 Javascript
jQuery实现表单动态加减、ajax表单提交功能
2018/06/08 jQuery
vscode配置vue下的es6规范自动格式化详解
2019/03/20 Javascript
详解关于React-Router4.0跳转不置顶解决方案
2019/05/10 Javascript
JavaScript工具库之Lodash详解
2019/06/15 Javascript
vue自定义表单生成器form-create使用详解
2019/07/19 Javascript
layui表格 返回的数据状态异常的解决方法
2019/09/10 Javascript
解决LayUI数据表格复选框不居中显示的问题
2019/09/25 Javascript
Node.js学习之内置模块fs用法示例
2020/01/22 Javascript
[31:00]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS iG
2014/05/25 DOTA
[01:02:20]Mineski vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python 打印出所有的对象/模块的属性(实例代码)
2016/09/11 Python
Python 实现随机数详解及实例代码
2017/04/15 Python
Python计时相关操作详解【time,datetime】
2017/05/26 Python
Python PyQt5标准对话框用法示例
2017/08/23 Python
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
2018/03/19 Python
Python中按键来获取指定的值
2019/03/02 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
2019/10/24 Python
师范生自荐信
2013/10/27 职场文书
四年级下册教学反思
2014/02/01 职场文书
班主任工作经验材料
2014/02/02 职场文书
社会治安综合治理责任书
2015/01/29 职场文书
Ajax是什么?Ajax高级用法之Axios技术
2021/04/21 Javascript
JS代码编译器Monaco使用方法
2021/06/11 Javascript
Redis配置外网可访问(redis远程连接不上)的方法
2022/12/24 Redis