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有证书的加密解密实现方法
Nov 19 Python
提升Python程序运行效率的6个方法
Mar 31 Python
Python实现保证只能运行一个脚本实例
Jun 24 Python
python fabric实现远程部署
Jan 05 Python
开源Web应用框架Django图文教程
Mar 09 Python
利用Python实现Windows下的鼠标键盘模拟的实例代码
Jul 13 Python
python3 tkinter实现点击一个按钮跳出另一个窗口的方法
Jun 13 Python
简单了解Django项目应用创建过程
Jul 06 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
Sep 09 Python
Python word文本自动化操作实现方法解析
Nov 05 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
Dec 22 Python
教你用python实现12306余票查询
Jun 30 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
将数组写入txt文件 var_export
2009/04/21 PHP
PHP实现无限分类的实现方法
2016/11/14 PHP
thinkPHP框架RBAC实现原理分析
2019/02/01 PHP
laravel 实现向公共模板中传值 (view composer)
2019/10/22 PHP
关于js拖拽上传 [一个拖拽上传修改头像的流程]
2011/07/13 Javascript
jquery validate poshytip 自定义样式
2012/11/26 Javascript
jQuery Pagination Ajax分页插件(分页切换时无刷新与延迟)中文翻译版
2013/01/11 Javascript
分享一个自己写的简单的javascript分页组件
2015/02/15 Javascript
浅谈js 闭包引起的内存泄露问题
2015/06/22 Javascript
jquery转盘抽奖功能实现
2015/11/13 Javascript
js右下角弹出提示框示例代码
2016/01/12 Javascript
15位和18位身份证JS校验的简单实例
2016/07/18 Javascript
运用js教你轻松制作html音乐播放器
2020/04/17 Javascript
Bootstrap基本样式学习笔记之表单(3)
2016/12/07 Javascript
Node.js的Mongodb使用实例
2016/12/30 Javascript
JavaScript原型继承_动力节点Java学院整理
2017/06/30 Javascript
Node.js 中使用 async 函数的方法
2017/11/20 Javascript
关闭Vue计算属性自带的缓存功能方法
2018/03/02 Javascript
Vue.js中的computed工作原理
2018/03/22 Javascript
js前端传json后台接收‘‘被转为quot的问题解决
2020/11/12 Javascript
[01:52]2020年DOTA2 TI10夏季活动预告片
2020/07/15 DOTA
[47:26]完美世界DOTA2联赛 LBZS vs Forest 第二场 11.07
2020/11/09 DOTA
python编程实现希尔排序
2017/04/13 Python
详解Python用户登录接口的方法
2019/04/17 Python
ORM Django 终端打印 SQL 语句实现解析
2019/08/09 Python
Python imread、newaxis用法详解
2019/11/04 Python
Python编程快速上手——正则表达式查找功能案例分析
2020/02/28 Python
CSS3 实现童年的纸飞机
2019/05/05 HTML / CSS
彪马日本官网:PUMA日本
2019/01/31 全球购物
英格兰足协官方商店:England Store
2019/07/12 全球购物
计算机应用职专应届生求职信
2013/11/12 职场文书
雷锋式好少年事迹材料
2014/08/17 职场文书
高中团支书竞选稿
2015/11/21 职场文书
入党申请书格式
2019/06/20 职场文书
html+css合并表格边框的示例代码
2021/03/31 HTML / CSS
redis击穿 雪崩 穿透超详细解决方案梳理
2022/03/17 Redis