Python os.rename() 重命名目录和文件的示例

yipeiwu_com6年前Python基础

概述

os.rename() 方法用于重命名文件或目录,从 src 到 dst,如果dst是一个存在的目录, 将抛出OSError。

语法

rename()方法语法格式如下:

os.rename(src, dst)

参数

src – 要修改的目录名

dst – 修改后的目录名

返回值

该方法没有返回值

该方法 可以重命名 文件 和目录,

如果 src参数 对应文件或目录,不存在,会保错,

如果 dst 参数 对应文件或目录,已经存在,也会报错

实验方法:

在当前目录下,新建一个目录,名称为:testDir

在目录testDir下,新建一个 文本文件:123.txt

在目录testDir下,新建一个目录:ttDir

测试代码如下:

# -*- coding:utf-8 -*-

import os


srcDir = './testDir/ttDir'

dstDir = './testDir/hhDir'

try:
 os.rename(srcDir,dstDir)
except Exception as e:
 print e
 print 'rename dir fail\r\n'
else:
 print 'rename dir success\r\n'

srcFile = './testDir/123.txt'

dstFile = './testDir/555.txt'

try:
 os.rename(srcFile,dstFile)
except Exception as e:
 print e
 print 'rename file fail\r\n'
else:
 print 'rename file success\r\n'



print('END')

第一次运行结果如下:

rename dir success

rename file success

END

Process finished with exit code 0

此时 目录: ttDir 已经被修改为 hhDir

文件: 123.txt 已经被修改为 555.txt

再次执行代码:

运行结果如下:

[Error 2] 
rename dir fail

[Error 2] 
rename file fail

END

Process finished with exit code 0

文件和目录 都不存在了 ,所以失败了

第三次运行:

在之前的基础上:

新建文件 123.txt ,新建目录 ttDir

这样 testDir的目录布局如下:

Python os.rename 重命名目录和文件

执行代码:

运行结果如下:

[Error 183] 
rename dir fail

[Error 183] 
rename file fail

END

Process finished with exit code 0

错误的原因是:相同文件名的文件,已经存在了,不会覆盖该文件。

以上这篇Python os.rename() 重命名目录和文件的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现读取命令行参数的方法

本文实例讲述了python读取命令行参数的方法。分享给大家供大家参考。具体分析如下: 如果想对python脚本传参数,python中对应的argc, argv(c语言的命令行参数)是什么...

Python3.遍历某文件夹提取特定文件名的实例

批量处理文件时,常需要先遍历某个路径提取特定条件的文件名。这篇写一个暴力遍历但很简洁的方法,真的非常简洁但是非常暴力。 例子目标是:获得存放遥感数据的文件夹下文件夹名以“_BAD”结尾的...

Python中使用pypdf2合并、分割、加密pdf文件的代码详解

朋友需要对一个pdf文件进行分割,在网上查了查发现这个pypdf2可以完成这些操作,所以就研究了下这个库,并做一些记录。首先pypdf2是python3版本的,在之前的2版本有一个对应p...

Django中ajax发送post请求 报403错误CSRF验证失败解决方案

Django中ajax发送post请求 报403错误CSRF验证失败解决方案

前言 今天学习Django框架,用ajax向后台发送post请求,直接报了403错误,说CSRF验证失败;先前用模板的话都是在里面加一个 {% csrf_token %} 就直接搞定了C...

Python面向对象程序设计之继承与多继承用法分析

本文实例讲述了Python面向对象程序设计之继承与多继承。分享给大家供大家参考,具体如下: 1. 继承 在C++和Java中,使用继承时,子类的构造函数会自动调用父类的构造函数,但在Py...