python 中文件夹的操作
文件有两个管家属性:路径和文件名。
路径指明了文件在磁盘的位置,文件名原点的后面部分称为扩展名(后缀),它指明了文件的类型。
一:文件夹操作
Python中os 模块可以处理文件夹
1,当前工作目录
import os
p = os.getcwd()
print(p)
#C:\Users\Administrator\Desktop
2,创建新目录
import os
os.makedirs('C:\\Users\\Administrator\\Desktop\\01\\02')
注:路径中所有必须的文件夹,都会被创建
3,删除目录
import os
os.rmdir('C:\\Users\\Administrator\\Desktop\\01\\02')
注:rmdir()只能删除空文件夹,否则抛出异常
4,列出当前目录内容(文件,文件夹),返回列表
import os
p = os.listdir('C:\\Users\\Administrator\\Desktop')
print(p)
5,修改当前目录
import os
os.chdir('C:\\Users\\Administrator')
print(os.listdir('.'))
注:“ .”代表当前路径
二:查找匹配的文件或者文件夹
使用glob()函数可以查找匹配文件或文件
import glob
glob.glob('2*') #查找以2开头的文件或者文件夹
glob.glob('d????') #查找以d开头的并且全长为5个字符的文件或者文件夹
glob.glob('[abcd]*') #查找以其中任意字符开头的文件或者文件夹
glob.glob('[!abcd]*') #同上,取反
三:文件的操作
os.path 模块主要用于文件的属性获取,在编程中经常用到
1,获取路径和文件名
import os
print(os.path.dirname('C:\\Users\\Administrator\\Desktop')) #C:\Users\Administrator
返回path参数中路径名称字符串
print(os.path.basename('C:\\Users\\Administrator\\Desktop')) #Desktop
返回path参数中的文件名
print(os.path.split('C:\\Users\\Administrator\\Desktop')) #('C:\\Users\\Administrator', 'Desktop')
返回参数的路径名称和文件名 组成的字符串元祖
print('C:\\Users\\Administrator\\Desktop'.split(os.path.sep)) #['C:', 'Users', 'Administrator', 'Desktop']
如想得到路径中每个文件夹的名字,可以使用上面的方法
2,检查路径的有效性
import os
path = 'C:\\Users\\Administrator\\Desktop\\01'
os.path.exists(path) #判断参数中文件或文件夹是否存在
os.path.isfile(path) #判断参数中该文件是否存在
os.path.isdir(path) #判断参数中该文件夹是否存在
注:以上结果存在 返回True ,否则 False
3,查看文件的大小
#例子:统计该文件夹下所有文件的大小
import os
path = 'C:\\Users\\Administrator\\Desktop\\01'
totalsize = 0
for i in os.listdir(path):
totalsize += os.path.getsize(i)
print(totalsize) 返回结果单位为byte(字节)
4,重命名文件
import os
os.rename('C:\\Users\\Administrator\\Desktop\\01\\01.txt','C:\\Users\\Administrator\\Desktop\\01\\02.txt')
5,复制文件和文件名
shutil模块中的函数,可以帮助我们复制,移动,改名,和删除文件夹,可以实现文件的备份
import shutil
shutil.copy('C:\\Users\\Administrator\\Desktop\\01\\02.txt','C:\\Users\\Administrator\\Desktop\\01\\03.txt')
上面这个方法可以复制文件
shutil.copytree() 这个方法可以递归复制文件夹
6,文件和文件夹的移动和改名
import shutil
shutil.move('C:\\Users\\Administrator\\Desktop\\01\\02.txt','C:\\Users\\Administrator\\Desktop') 单移动
import shutil
shutil.move('C:\\Users\\Administrator\\Desktop\\01\\02.txt','C:\\Users\\Administrator\\Desktop\\03.txt') #移动+改名
注:如果最终移动目录存在重名的文件,则直接覆盖(需谨慎)
7,删除文件和文件夹
os模块和shutil模块都有函数可以删除 文件和 文件夹
os.remove(path)/os.unlink(path) :删除path指定的文件或 文件夹
import os
os.remove('C:\\Users\\Administrator\\Desktop\\02.txt')
解析: os.rmdir(path) 只能删除空文件夹,shutil.rmtree(path) 可以删除整个文件夹,包含所有子文件(需谨慎)
python 中文件夹的操作的更多相关文章
- python 关于文件夹的操作
在python中,文件夹的操作主要是利用os模块来实现的, 其中关于文件夹的方法为:os.lister() , os.path.join() , os.path.isdir() # path 表示文 ...
- python中文件的基础操作
打开文件的三种方式: open(r'E:\学习日记\python\code\文件的简单操作.py') open('E:\\学习日记\\python\\code\\文件的简单操作.py') open(' ...
- Python中文件路径名的操作
1 文件路径名操作 对于文件路径名的操作在编程中是必不可少的,比如说,有时候要列举一个路径下的文件,那么首先就要获取一个路径,再就是路径名的一个拼接问题,通过字符串的拼接就可以得到一个路径名.Pyth ...
- 『无为则无心』Python基础 — 41、Python中文件的读写操作(一)
目录 1.文件操作步骤 2.文件的读写操作 (1)文件的打开 (2)打开文件模式 (3)获取一个文件对象 (4)关于文件路径 1.文件操作步骤 当我们要读取或者写入文件时,我们需要打开文件,在操作完毕 ...
- Python中文件的读写操作的几种方法
对文件的操作,步骤为:打开一个文件-->读取/写入内容-->保存文件 文件读写的3中模式 # 1.w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写 ...
- Python中文件的读写操作
文件操作基本流程: 1. 介绍 计算机系统是由计算机硬件,操作系统,和应用程序三部分组成. 内存 存放不持久 硬盘 可以使数据持久化 文件操作 数据持久化的一种 全栈开发 框架类 2. 文件的操作 ...
- 『无为则无心』Python基础 — 42、Python中文件的读写操作(二)
目录 (5)文件对象方法(重点) 1)写方法 2)读方法 3)seek()方法 4)tell()方法 (6)关闭 (7)综合练习:读取大文件 (5)文件对象方法(重点) 1)写方法 @1.语法 对象对 ...
- python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件
python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...
- [转]python中对文件、文件夹的操作——os模块和shutil模块常用说明
转至:http://l90z11.blog.163.com/blog/static/187389042201312153318389/ python中对文件.文件夹的操作需要涉及到os模块和shuti ...
随机推荐
- 当我们谈 SQL 优化时在谈些什么?
作者 |孙银行编辑 | 顾乡 背景 Mysql数据库作为数据持久化的存储系统,在实际业务中应用广泛.在应用也经常会因为SQL遇到各种各样的瓶颈.最常用的Mysql引擎是innodb,索引类型是B-Tr ...
- Hibernate 实体对象三种状态 :自由,持久,游离
实体对象的状态及转化: 有了上面关于Hibernate缓存的知识,我们再来介绍实体对象的状态就非常容易理解了. A:自由态对象: 当我们通过Java的new关键字来生成一个实体对象时,这时这个实体对象 ...
- localtime 的性能问题及其替代者
在系统从redhat5升到redhat6的过程中,服务的性能差了很多.经过定位发现是程序中频繁调用localtime/localtime_r所致. 而调用localtime_r 的实现中,对时区进行了 ...
- 字节流之文件输出流FileOutputStream
文件拷贝:
- JavaScript(JS)实现省市联动选择下拉列表
在开发一个应用的时候需要用刀省市联动的下拉列表,网上找到不少.但是要么太复杂,难以修改:要么根本就用不了,最后自己在一个示例中提取出数据,然后自己写了一个,简单易懂,适合新手... 代码如下: Pro ...
- Cannot connect to the Docker datemon at tcp://0.0.0.0:2375 is the docker daemon runing?
一.系统环境: 在Windows 7 64位上,采用Vmware workstation 12安装了CenOS7.5 64位. 二.问题 在CentOS7.5里安装了Docker,启动docker服务 ...
- Solidity部署问题
Solidity是一个有诸多限制的语言,部署智能合约以及运行都需要gas. 部署的时候如果程序太大,所需要的gas会超过一个区块的上限,这样就没法部署合约.如果用metamask测试的话会弹出以下警告 ...
- LaTeX入门教程(一)
LaTeX(LATEX,音译“拉泰赫”)是一种基于ΤΕΧ的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在20世纪80年代初期开发,利用这种格式,即使使用者没有排版和程序设计 ...
- asp.net web 自定义控件
0.调用代码 protected override void Page_Load(object sender, EventArgs e) { //给基类服务接口复制,可不付 if (IsPostBac ...
- 第七课 ROS的空间描述和变换
在命令行工具中也有一个与transformcaster相类似的工具叫做static_transform_publisher,它能够接受命令行参数来接受位置信息.旋转信息.父框架.子框架以及周期信息,通 ...