文档章节

批量重命名文件——python实现

jingshishengxu
 jingshishengxu
发布于 2012/09/07 12:51
字数 342
阅读 151
收藏 2

任务很简单,某个目录下面有几千个文件,某些文件没有后缀名,现在的任务就是将所有的没有后缀名的文件加上后缀名,python有现成的函数可以实现,但是在实现过程中遇到几个问题,分享一下解决方法

下面是最终代码 (windows下实现的)


#  -*- coding: cp936 -*-
import  os
path =  'D :\\图片\\ '
for  file  in  os.listdir(path):
     if  os.path.isfile(os.path.join(path,file))==True:
         if  file.find( ' . ' )<0:
            newname=file+ ' rsfdjndk.jpg '
            os.rename(os.path.join(path,file),os.path.join(path,newname))
             print  file, ' ok '

#        print file.split('.')[-1] 


 实现的方法是:首先遍历path指定的目录,如果是文件(不是文件夹)并且文件名中不存在 ‘.’ ,也就是没有后缀名,就把这个文件加上后缀名,然后重命名

有些细节需要注意:

1.如果path指定的文件夹不是这个程序的所在的目录,rename函数里面的路径就必须是绝对路径,否则就会报‘WindowsError: [Error 2]’错误

2.重命名时如果新文件名已经存在,就会报‘WindowsError: [Error 183]’ 错误,所以,新文件名最好加上一些随机字符串

3.如果改文件名或者后缀名可以用split() 函数进行分割

4.find函数如果找不到指定的字符串的话就会返回 ‘-1’ 

本文转载自:http://www.cnblogs.com/ma6174/archive/2012/05/04/2482378.html

共有 人打赏支持
jingshishengxu
粉丝 71
博文 478
码字总数 50532
作品 0
杭州
部门经理
python脚本批量修改文件名

我曾以为,写脚本是很难的,直到我遇到了Python 前言 随着国内版权意识的跟进,很多影视音乐资源开始收费,而且度盘又经常随意封杀各种资源,所以,为了保护资源,老司机们越来越倾向于把资源下载到...

zhaoolee
2017/09/09
0
0
每天更新Python之在工作中的应用

  记住代码都是别人的哪都是,那不是你的,别直接自己运行真把他弄懂   例1:文件批量处理   对文件进行批量重命名,将文件夹中所有的文件名的”scroll1”替换为”scroll00”。   文...

Python火火火
2017/04/30
0
0
这是Python操作Excel表格最好的教材, 爬虫工程师都对它爱不释手

因为数据是用.csv格式保存的,所以我们通常用Excel来处理。然而其工作量是非常大的,反复操作一些相同的动作,所以Python爬虫师那种动则几十万的数据量,都会利用Python脚本来给我们处理。 ...

Python新世界
08/02
0
0
ansible管理windows实践

ansible管理windows实践 一、前言 近期打算搞搞自动部署,因为是windows服务器,一些工具和系统支持都不是太好。最后发现ansible比较火,最重要的是他支持windows。本文主要就ansible 在win...

holy2009
06/28
0
0
自动化运维工具—Ansible基本概念

Ansible: ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet,cfengine,chef,func,fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能...

Hito
08/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

关于编程,你的练习是不是有效的?

最近由于工作及Solution项目的影响,我在重新学习DDD和领域建模的一些知识。然后,我突然就想到了这个问题,以及我是怎么做的? 对于我来说,提升技能的项目会有四种: 纯兴趣驱动的项目。即...

问题终结者
29分钟前
1
0
打开eclipse出现an error has occurred see the log file

解决方法: 1,打开eclipse安装目录下的eclipse.ini文件; 2,打开的文本文件最后添加一行 --add-modules=ALL-SYSTEM 3,保存重新打开Eclipse。...

任梁荣
昨天
4
0
搞定Northwind示例数据库,无论哪个版本的SQLServer都受用

Northwind数据库 从这里可以找到突破口: http://social.msdn.microsoft.com/Forums/zh-CN/Vsexpressvb/thread/8490a1c6-9018-40c9-aafb-df9f79d29cde 下面是MSDN: http://msdn2.microsoft......

QQZZFT
昨天
1
0
mysql主从同步,安装配置操作

准备 两台mysql服务,我这里准备了如下: 主库:192.168.176.128 从库:192.168.176.131 如何在Linux上安装mysql服务,请看https://blog.csdn.net/qq_18860653/article/details/80250499 操作...

小致dad
昨天
4
0
Redis的“死键”问题

大规模的数据库存储系统中,数据的生命周期管理是很有必要的;从业务角度发现过期数据,数据归档和数据碎片整理等。以MySQL为例,1个运行很久的TB级MySQL实例中,极有可能数百GB的数据,对业...

IT--小哥
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部