python下os模块强大的重命名方法renames详解


Posted in Python onMarch 07, 2017

python下os模块强大的重命名方法renames详解

 在python中有很多强大的模块,其中我们经常要使用的就是OS模块,OS模块提供了超过200个方法来供我们使用,并且这些方法都是和数据处理相关的,这里介绍下重命名这个方法。

    OS的重命名方法是os.rename,我用的ipython,这个玩意很是强大,只要按下TAB键,可以帮助我们自动对齐和列出可以使用的方法,发现有2个方法,分别是rename和renames,2个方法,前面的rename使用过无数次,但是后面的renames还没有使用过,今天有空,想看看到底有和用处---顾名思义,我觉得可能是批量修改吧,哈哈,下面我们来看下演示效果:

[root@localhost ~]# ipython    进入ipython工具
Python 2.6 (r26:66714, Dec 17 2010, 11:17:00)
Type "copyright", "credits" or "license" for more information.

IPython 0.10.1 -- An enhanced Interactive Python.
?     -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help   -> Python's own help system.
object?  -> Details about 'object'. ?object also works, ?? prints more.

In [1]: import os          导入OS模块

In [2]: os.mkdir("/tmp/test")    新建目录

In [3]: os.listdir("/tmp/test")   
Out[3]: []

In [4]: os.mkdir("/tmp/test/test1")       新建目录

In [5]: os.listdir("/tmp/test/")
Out[5]: ['test1']

In [6]: os.listdir("/tmp/test/test1")
Out[6]: []

In [7]: os.ren          按Tab键自动对齐的效果
os.rename  os.renames

In [7]: os.rename("/tmp/test/test1","/tmp/test/test2")

重命名目录名

In [8]: os.listdir("/tmp/test/")  修改成功
Out[8]: ['test2']

In [9]: os.rename         按Tab键自动对齐的效果
os.rename  os.renames

In [9]: os.rename("/tmp/test/test2","/tmp/test1/test3")

大家注意看下这个命令和上面的命令的区别,我不仅仅是要重命名最后的目录名,连前面的目录也要重命名
---------------------------------------------------------------------------
OSError                  Traceback (most recent call last)

/root/<ipython console> in <module>()

OSError: [Errno 2] No such file or directory

嘿嘿,报错了,说没有这个目录,
下面在看下下面这个强大的方法吧,哈哈

In [10]: os.renames("/tmp/test/test2","/tmp/test1/test3")

In [11]: os.listdir("/tmp/test1/test3")
Out[11]: []

嘿嘿,居然成功了,真是强大啊,子目录能改,上级目录也能改,这个法子也许对我们工作会有帮助吧。
In [12]: os.listdir("/tmp/test1")
Out[12]: ['test3']

    同样的,他可以修改目录名,不知道能否连文件名,目录名一起修改呢,下面我们再来看下效果:

In [22]: os.listdir("/tmp/test1/test3/")
Out[22]: ['test']       新建一个空文件

In [23]: cat /tmp/test1/test3/test

In [24]: os.renam
os.rename  os.renames  

In [24]:
os.renames("/tmp/test1/test3/test","/tmp/test/test2/test3")

批量修改文件名和目录名,嘿嘿,果然也成功了。

In [25]: os.listdir("/tmp/test/test2/test3")
---------------------------------------------------------------------------
OSError                  Traceback (most recent call last)

/root/<ipython console> in <module>()

OSError: [Errno 20] Not a directory: '/tmp/test/test2/test3'

In [26]: os.listdir("/tmp/test/test2/")  浏览效果
Out[26]: ['test3']

In [27]:

   希望本文能对大家的工作和学习有帮助,如果感兴趣,可以自己去试验下。。。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
Python编写的com组件发生R6034错误的原因与解决办法
Apr 01 Python
Python将字符串常量转化为变量方法总结
Mar 17 Python
python如何读取bin文件并下发串口
Jul 05 Python
在jupyter notebook中调用.ipynb文件方式
Apr 14 Python
Python任务调度模块APScheduler使用
Apr 15 Python
500行python代码实现飞机大战
Apr 24 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
Jul 02 Python
基于opencv实现简单画板功能
Aug 02 Python
python如何设置静态变量
Sep 07 Python
PyCharm上安装Package的实现(以pandas为例)
Sep 18 Python
python实现自动打卡的示例代码
Oct 10 Python
用 Django 开发一个 Python Web API的方法步骤
Dec 03 Python
深入理解python中的atexit模块
Mar 07 #Python
Python 备份程序代码实现
Mar 06 #Python
Python与Java间Socket通信实例代码
Mar 06 #Python
python使用arcpy.mapping模块批量出图
Mar 06 #Python
python与php实现分割文件代码
Mar 06 #Python
windows系统下Python环境的搭建(Aptana Studio)
Mar 06 #Python
windows下安装Python和pip终极图文教程
Mar 05 #Python
You might like
浅谈电磁辐射对健康的影响
2021/03/01 无线电
php函数的常用方法及注意之处小结
2011/07/10 PHP
Yii把CGridView文本框换成下拉框的方法
2014/12/03 PHP
解读PHP中的垃圾回收机制
2015/08/10 PHP
PHP Laravel 上传图片、文件等类封装
2017/08/16 PHP
PHP常用header头定义代码示例汇总
2020/08/29 PHP
BOOM vs RR BO3 第二场2.13
2021/03/10 DOTA
HTML代码中标签的全部属性 中文注释说明
2009/03/26 Javascript
新鲜出炉的js tips提示效果
2011/04/03 Javascript
js子页面获取父页面数据示例
2014/05/15 Javascript
javascript的动态加载、缓存、更新以及复用(一)
2014/06/09 Javascript
jquery的clone方法应用于textarea和select的bug修复
2014/06/26 Javascript
Node.js中路径处理模块path详解
2016/11/14 Javascript
js输入框使用正则表达式校验输入内容的实例
2017/02/12 Javascript
用JS编写一个函数,返回数组中重复出现过的元素(实例)
2017/09/14 Javascript
微信小程序实现鼠标拖动效果示例
2017/12/01 Javascript
Vue Components 数字键盘的实现
2019/09/18 Javascript
js实现自动播放匀速轮播图
2020/02/06 Javascript
Postman环境变量全局变量使用方法详解
2020/08/13 Javascript
Python的Flask框架中实现简单的登录功能的教程
2015/04/20 Python
Python实现的简单模板引擎功能示例
2017/09/02 Python
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
python处理“
2019/06/10 Python
解决Django中调用keras的模型出现的问题
2019/08/07 Python
文件上传服务器-jupyter 中python解压及压缩方式
2020/04/22 Python
python获取整个网页源码的方法
2020/08/03 Python
struct与class的区别
2014/02/03 面试题
出纳的岗位职责
2013/11/09 职场文书
八一建军节感言
2014/02/28 职场文书
2014年高三班主任工作总结
2014/12/05 职场文书
幼儿园小班工作总结2015
2015/04/25 职场文书
订货会主持词
2015/07/01 职场文书
保护地球的宣传语
2015/07/13 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
酒桌上的祝酒词
2015/08/12 职场文书
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
2022/05/04 Python