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

概述

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的目录布局如下:

执行代码:

运行结果如下:

[Error 183]
rename dir fail

[Error 183]
rename file fail

END

Process finished with exit code 0

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

以上这篇Python os.rename() 重命名目录和文件的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 详解python中__name__的意义以及作用

    首先定义了一个test.py的文件,然后再定义一个函数,并在函数定义后直接运行: test.py def HaveFun(): if __name__ == '__main__': print('I am in my domain,my name is %s' % __name__) else: print('Someone else calls me!,my name is %s' % __name__) HaveFun() 运行test.py结果: I am in my domain,my

  • Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)

    前言 在Python中提供了json包来方便快捷的解析json字串的转换过程,但是碰到了一个比较奇怪的问题,就是不太正确的json串如何来解析? 1. 问题的提出 今天在处理一个http请求的响应json之时,基于python进行解析,碰到了如下错误: Traceback (most recent call last): File "<ipython-input-16-bff463ed9408>", line 1, in <module> json.loads(

  • 解决Python找不到ssl模块问题 No module named _ssl的方法

    python安装完毕后,提示找不到ssl模块: [www@pythontab.com ~]$ python Python 2.7.15 (default, Oct 23 2018, 18:08:43) [GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux2 Type "help", "copyright", "credits" or "license" for more inform

  • python__name__原理及用法详解

    1.python中__name__是什么意思? 很多python的初学者可能都会遇到一个问题:__name__是什么意思? 在刚开始学习python的时候,我们总会看到这样一句代码: if __name__ == "__main__": 一开始我以为这句代码的意思和C语言中的main函数一样,程序从这里开始执行,但后来经过查询资料发现,两者并不完全相同,这里做一些解释: __name__是一个变量,前后加了双下划线是因为这是系统定义的名字(python中系统变量都是双下划綫开头结尾),

  • 正确理解Python中if __name__ == '__main__'

    在Python,我们经常会编写 if __name__ == '__main__' 这么一段代码,这段代码该怎么来理解? 这段代码的功能理解如下: 一个python的文件有两种使用的方法: 作用一,直接作为脚本执行. 作用二,import到其他的python脚本中被调用(模块重用)执行. if __name__ == '__main__': 的作用就是控制这两种情况执行代码的过程,在if __name__ == '__main__': 下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执

  • python下setuptools的安装详解及No module named setuptools的解决方法

    前言 python下的setuptools带有一个easy_install的工具,在安装python的每三方模块.工具时很有用,也很方便. 安装setuptools前先安装pip,请参考:linux下pip的安装步骤及使用详解 1. 下载: 在它的官网可以下载到安装包: https://pypi.python.org/pypi/setuptools 页面最下面的是它的安装链接,如: $wget --no-check-certificate https://pypi.python.org/pack

  • 解决python "No module named pip"的问题

    python 升级后导致不能使用原来的pip命令 windows平台 cmd中敲命令:python -m ensurepip 得到pip的setuptools 然后就可以用:easy_install pip 下载相应版本的pip,最后就可以愉快的用pip命令了! 以上这篇解决python "No module named pip"的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Python 获取主机ip与hostname的方法

    ->基础环境 Linux:ubuntu 16.04 Python : 2.7 ->修改hostname 1:$sudo hostname 2tong-slavetwo 2:$sudo vi /etc/hostname 2tong-slavetwo 3:$sudo vi /etc/hosts 127.0.0.1 localhost 2tong-slavetwo 127.0.1.1 2tong-slavetwo ->Python 环境下输出ip hostname >>>im

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

    概述 os.rename() 方法用于重命名文件或目录,从 src 到 dst,如果dst是一个存在的目录, 将抛出OSError. 语法 rename()方法语法格式如下: os.rename(src, dst) 参数 src – 要修改的目录名 dst – 修改后的目录名 返回值 该方法没有返回值 该方法 可以重命名 文件 和目录, 如果 src参数 对应文件或目录,不存在,会保错, 如果 dst 参数 对应文件或目录,已经存在,也会报错 实验方法: 在当前目录下,新建一个目录,名称为:te

  • python根据list重命名文件夹里的所有文件实例

    如下所示: # coding = utf-8 import os path = "D:\\chunyu"#想要重命名所有文件存放的文件夹 filelist = os.listdir(path) #该文件夹下所有的文件(包括文件夹) list = [] fileopen = open('D:\chunyu.txt','r')#之后想要重命名成的所有名字的集合,这个名字为除去文件扩展名的文件名 i =0 for file in filelist: print(file) for line

  • python按顺序重命名文件并分类转移到各个文件夹中的实现代码

    系统 ubuntu20.04 工具 python 要求 文件夹中有22个子文件夹,每个子文件又包含56个文件,要求将每个子文件夹中的第一个文件放到一个新文件夹中,第二个放一个新的中,一直到最后. 解决方案 1.复制源文件 import os import shutil #源文件路径 source_path='......' #复制的新文件的路径 copy_source_path='.....' #直接复制过去的话,经常会提示文件存在,所以加个判断语句 #判断路径是否存在源文件,如果有则删除 if

  • node.js用fs.rename强制重命名或移动文件夹的方法

    本文介绍了node.js用fs.rename强制重命名或移动文件夹的方法,首先介绍了rename的用法,具体如下: [重命名文件夹] // rename.js var fs = require("fs"); // 重命名a文件夹为b fs.rename("c:a","C:b",function(err){ if(err){ console.log("重命名失败!"); }else{ console.log("重命名成

  • Python标准库pathlib操作目录和文件

    目录 pathlib 基本组件 常用属性和基本方法 总结 学习 Python 时,尤其是在进行文件操作和数据处理时,经常会处理路径问题.最常用和常见的是 os.path 模块,它将路径当做字符串进行处理,如果使用不当可能导致难以察觉的错误,而且代码很难跨平台复用.pathlib 就是一个非常棒的Python标准库,超级好用. pathlib模块提供了一种在 POSIX 系统(如 Linux 和 Windows)下运行良好的高级抽象,它抽象了资源路径和资源命名结构,把文件系统接口从os模块中隔离出

  • python os.rename实例用法详解

    使用 os.rename方法并不难,主要的功能就是应用在对文件的重命名,常规上我们要在桌面上更改文件,直接选中右键点击软件,然后进行重命名即可,这是我们最常见的一种方式,在py里如果想要去更改文件名称,也并不难,事实上,经常需要用到的方式基本上操作起来都很简单,一起来看下吧~ Python os.rename()方法使用说明 语法:os.rename(src, dst) 参数:src.dst 使用示例: import os os.rename('.txt') 批量更改文件名实现代码: #-*-

  • python实现大量图片重命名

    本文实例为大家分享了python实现大量图片重命名的具体代码,供大家参考,具体内容如下 说明 在进行深度学习的过程中,需要对图片进行批量的命名处理,因此利用简单的python代码实现图片的命名格式处理 # -*- coding:utf8 -*- import os class BatchRename(): ''' 批量重命名文件夹中的图片文件 ''' def __init__(self): self.path = 'C:/Users/.../Data/Image' #表示需要命名处理的文件夹 d

  • python文件名批量重命名脚本实例代码

    python文件名批量重命名脚本 #encoding=utf-8 import cv2 import os import shutil base_dir = r'文件所在的文件夹路径' SourseDir1 = r'源文件1名' SourseDir2 = r'源文件2名' DestDir = r'IMG' DestSourseDir1NameDirPath = os.path.join(base_dir,DestDir) if not os.path.exists(DestSourseDir1N

  • Python实现批量更换指定目录下文件扩展名的方法

    本文实例讲述了Python实现批量更换指定目录下文件扩展名的方法.分享给大家供大家参考,具体如下: #encoding=utf-8 #author: walker #date: 2013-12-06 #function: 深度遍历指定目录,更换指定扩展名 import os import os.path #读入指定目录并转换为绝对路径 rootdir = raw_input('root dir:\n') rootdir = os.path.abspath(rootdir) print('abso

  • node.js文件上传重命名以及移动位置的示例代码

    一个关于node上传文件的例子,下面是前端代码, doUpload() { var formData = new FormData($("#uploadForm")[0]); $.ajax({ url: 'http://localhost:3011/upload', type: 'POST', data: formData, async: false, cache: false, contentType: false, processData: false, success: func

随机推荐