检索一个目录及子目录下所有的txt文件,并把txt文件后缀改为log:

import os
f_path = r'C:\Users\PycharmProjects\mystudy\Testfolder'
def find_file(file_path, o_post, n_post, lis):
ls = os.listdir(file_path)
for i in ls:
son_path = os.path.join(file_path,i)
if os.path.isdir(son_path):
find_file(son_path,o_post,n_post,lis)
else:
file_post = str(i.split('.')[-1])
if file_post == o_post:
lis.append(i)
os.rename(son_path,str(son_path.split('.')[0])+'.'+n_post)
print('找到文件{srcnam},已修改成:{dicname}'.format(srcnam=son_path,dicname=str(i.split('.')[0])+'.'+n_post))
return lis
old_post = 'log'
new_post = 'txt'
print('已修改文件:',find_file(f_path, old_post, new_post, []))

运行结果:

C:\Users\shenping\AppData\Local\Programs\Python\Python36-32\python.exe C:/Users/PycharmProjects/mystudy/修改文件类型.py
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\f1\f5\f6\tt.txt,已修改成:tt.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\f1\f5\gg.txt,已修改成:gg.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\f1\fw1.txt,已修改成:fw1.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\f2\fw2.txt,已修改成:fw2.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\f4\fw4.txt,已修改成:fw4.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\w1.txt,已修改成:w1.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\w2.txt,已修改成:w2.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\w3.txt,已修改成:w3.log
找到文件C:\Users\PycharmProjects\mystudy\Testfolder\w4.txt,已修改成:w4.log
已修改文件: ['tt.txt', 'gg.txt', 'fw1.txt', 'fw2.txt', 'fw4.txt', 'w1.txt', 'w2.txt', 'w3.txt', 'w4.txt']

python 检索一个目录下所有的txt文件,并把文件改为.log的更多相关文章

  1. Python读取一个目录下的所有文件

    #!/usr/bin/python # -*- coding:utf8 -*- import os allFileNum = 0 def printPath(level, path): global ...

  2. python 读取一个目录下的所有目录和文件

    #!/usr/bin/python # -*- coding:utf8 -*- import os allFileNum = 0 def printPath(level, path): global ...

  3. python 删除一个目录下的所有文件

    一个目录下有文件,文件夹,文件夹里又有文件.文件夹....用python脚本,实现,递归删除一个目录下的所有文件: 目录结构如下: 其中我们要删除所有文件 代码实现如下: import os CUR_ ...

  4. 用Python删除本地目录下某一时间点之前创建的文件

    参考http://www.cnblogs.com/iderek/p/8035757.html os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前 ...

  5. Python:遍历一个目录下所有的文件及文件夹,然后计算每个文件的字符和line的小程序

    编写了一个遍历一个目录下所有的文件及文件夹,然后计算每个文件的字符和line的小程序,先把程序贴出来. #coding=utf-8 ''' Created on 2014年7月14日 @author: ...

  6. python获取指定目录下特定格式的文件名

    之前一直用windows下的bat脚本获取一个目录下的指定格式的文件名,如下所示: dir *.jpg /b/s > train.set pause 十分简单,将这个bat文件放到你想要获取文件 ...

  7. python获取指定目录下所有文件名os.walk和os.listdir

    python获取指定目录下所有文件名os.walk和os.listdir 觉得有用的话,欢迎一起讨论相互学习~Follow Me os.walk 返回指定路径下所有文件和子文件夹中所有文件列表 其中文 ...

  8. python实现指定目录下批量文件的单词计数:并发版本

    在 文章 <python实现指定目录下批量文件的单词计数:串行版本>中, 总体思路是: A. 一次性获取指定目录下的所有符合条件的文件 -> B. 一次性获取所有文件的所有文件行 - ...

  9. python引入同一目录下的py文件

    python引入同一目录下的py文件 注意:python2和python3的包内import语法有区别,下面介绍一下python3的包内import语法 例如在admin.py文件中要引入dealco ...

随机推荐

  1. LocalDateTime json格式化

    参考https://www.cnblogs.com/xiaozhang9/p/jackson.html?utm_source=itdadao&utm_medium=referral <d ...

  2. alter 和 update的用法和区别

    alter的增加和删除alter table xs_kc add xuefen number;alter table xs_kc drop column xuefen; 删除的时候必须使用column ...

  3. JS数组去重办法大全

    第一种是比较常规的方法 思路: 1.构建一个新的数组存放结果 2.for循环中每次从原数组中取出一个元素,用这个元素循环与结果数组对比 3.若结果数组中没有该元素,则存到结果数组中 复制代码代码如下: ...

  4. ubuntu 下当前网速查看

    ubuntu下用ethstatus可以监控实时的网卡带宽占用.这个软件能显示当前网卡的 RX 和 TX 速率,单位是Byte 一.安装 ethstatus 软件 #sudo apt-get insta ...

  5. Weblogic 12c 一个domain建多个server(端口)

    一.基本概念 我觉得如果刚接触Weblogic,首先应该做的是明白几个基本的概念,可以从一张图入手: 1. 域(domain) 它是一个基本管理单元: 每个域包含一个管理服务器(Administrat ...

  6. [leetcode]236. Lowest Common Ancestor of a Binary Tree 二叉树最低公共父节点

    Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree. According ...

  7. OrgChart 组织架构与PHP结合使用

    一.OrgChart下载地址: https://github.com/dabeng/OrgChart 二.组织架构的表设计 CREATE TABLE `org_info` ( `id` int(11) ...

  8. kerberos认证的步骤,学习笔记

    .KDC,uname,upwd -x算法=>authticator 暗号 .KDC ->uname,pwd->x1算法->解密authticator 确认客户端身份->生 ...

  9. cocos2d接安卓facebook插件(已测cocos-x 3.7 3.8版本)

    1  控制台创建新工程: a 控制台 进入cocos2d文件夹下面,如cocos2d-x-3.7.1,执行setup.py,未设置NDK SDK ANT 路径的设置路径,需要改路径的 explore ...

  10. 2018.09.26洛谷P1084 疫情控制(二分+倍增)

    传送门 好题啊. 题目要求的最大值最小,看到这里自然想到要二分答案. 关键在于怎么检验. 显然对于每个点向根走比向叶节点更优. 因此我们二分答案之后,用倍增将每个点都向上跳到跳不动为止. 这时我们ch ...