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 多线程串行和并行的实例

如下所示: #coding=utf-8 import threading import time import cx_Oracle from pprint import pprint...

Python实现随机创建电话号码的方法示例

Python实现随机创建电话号码的方法示例

本文实例讲述了Python实现随机创建电话号码的方法。分享给大家供大家参考,具体如下: 当需要随机的生成一些电话号码的时候,可以使用以下脚本,简单实用,第一个列表中 list列表中的数字...

使用pyhon绘图比较两个手机屏幕大小(实例代码)

使用pyhon绘图比较两个手机屏幕大小(实例代码)

背景:准备给长辈买个手机,有关手机大小,网购平台基本只有手机尺寸和分辨率的文本数据,因而对手机屏幕大小没有直观感受,虽然网上有比较手机大小的网站(百度搜索),但是只有知名的手机才有数据,...

python使用代理ip访问网站的实例

python使用代理ip访问网站的实例

实例如下所示: # -*- coding: UTF-8 -*- from urllib import request if __name__ == "__main__": #访问...

tensorflow实现KNN识别MNIST

KNN算法算是最简单的机器学习算法之一了,这个算法最大的特点是没有训练过程,是一种懒惰学习,这种结构也可以在tensorflow实现。 KNN的最核心就是距离度量方式,官方例程给出的是L...