Python:使用 os、shutil 模块对文件与目录操作

简介: 当你想批量处理文件的时候,使用 python 对文件或者文件夹进行操作,可以迅速地解决问题。 在 python 里面有几个内置模块可以对文件进行复制、移动、重命名及读写等操作。以下是对 os、shutil 模块里面的重要函数与方法进行的简单介绍。

当你想批量处理文件的时候,使用 python 对文件或者文件夹进行操作,可以迅速地解决问题。
在 python 里面有几个内置模块可以对文件进行复制、移动、重命名及读写等操作。以下是对 os、shutil 模块里面的重要函数与方法进行的简单介绍。


一、os 模块

常用函数和方法:

函数或方法 说明 函数或方法 说明
os.rename(old, new) 重命名文件 os.makedirs(dir) 创建多级目录
os.remove(file) 删除文件 os.mkdir(dir) 创建单级目录
os.listdir(path) 列出所指目录下的所有文件 os.rmdir(dir) 删除空目录
os.path.split() 分离路径与文件名 os.path.splitext() 分离文件与扩展名
os.path.basename() 获取文件名 os.path.exists() 判断文件是否存在
os.path.isabs() 判断是否是绝对路径 os.path.isdir() 判断是否为目录
os.path.isfile() 判断是否为文件 os.path.join() 把路径与文件名结合

二、shutil 模块

常用函数和方法:

函数或方法 说明 函数或方法 说明
shutil.copyfile(old, new) 仅复制文件内容,不含属性 shutil.copy(old, new) 含有文件的权限属性
shutil.copy2(old, new) 含所有的文件属性 shutil.copytree(old, new) 复制整个目录
shutil.rmtree() 删除目录(包括内容) shutil.move(old, new) 移动目录或文件

三、文件读写

1.使用 open(file, 'mode') 来打开一个文件,若文件不存在,则创建这个文件。
第二个参数是文件的打开模式:
r:读方式
w:写方式
a:读写方式
r+:可读可写
w+:读写。若文件已存在则将其覆盖;若文件不存在,则创建这个文件。
a+:读写。若文件已存在,文件打开时会是追加模式,即光标将会放在文件的结尾;若文件不存在,则创建这个文件。

2.对文件进行读写操作
使用 write()、read()、readline()、readlines() 等可对文件进行读写,使用时格式如下

# 打开文件
f = open(file, 'a+')
# 把字符写进文件
f.wrire('str')
# 读取文件,可指定读取的长度
f.read()
# 读取一行内容,可指定 size 读取一行的某一部分
f.readline()
# 读取文件并返回一个列表,每一行是列表的一个元素
f.readlines()
# 关闭文件
f.close()

在文件中想进行换行可以使用换行符 /n

目录
相关文章
|
30天前
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
15 1
|
1月前
|
Shell Python
Python 的 os 库的应用实例
Python 的 os 库的应用实例
|
1月前
|
编解码 UED Python
Python批量修改指定目录下图片的大小名文章
Python批量修改指定目录下图片的大小名文章
15 1
|
1月前
|
Shell Python
Python中os模块的常用方法和示例
在Python中,`os`模块提供了与操作系统交互的函数,用于文件和目录管理、路径操作、环境变量等。常用方法包括路径操作(如`os.path.join()`、`os.path.abspath()`)、文件和目录管理(如`os.mkdir()`、`os.remove()`)、环境变量和进程管理(如`os.getenv()`、`os.system()`)以及其他常用功能(如`os.getcwd()`、`os.urandom()`)。
26 0
|
6月前
|
Python 人工智能 数据可视化
Python模块与包(八)
Python模块与包(八)
49 0
Python模块与包(八)
|
6月前
|
Python
python中导入模块/包的几种方式
python中导入模块/包的几种方式
73 0
|
2月前
|
人工智能 数据可视化 搜索推荐
Python异常模块与包
Python异常模块与包
|
2月前
|
开发者 Python
30天拿下Python之模块和包
30天拿下Python之模块和包
18 2
|
3月前
|
Python
手撕Python!模块、包、库,傻傻分不清?一分钟带你弄明白!
手撕Python!模块、包、库,傻傻分不清?一分钟带你弄明白!
47 1
|
3月前
|
PyTorch TensorFlow 算法框架/工具
手撕Python! 模块、包和库一分钟搞定!
手撕Python! 模块、包和库一分钟搞定!
30 1
下一篇
无影云桌面