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

目录
相关文章
|
24天前
|
前端开发 JavaScript 开发工具
【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
129 5
【04】鸿蒙实战应用开发-华为鸿蒙纯血操作系统Harmony OS NEXT-正确安装鸿蒙SDK-结构目录介绍-路由介绍-帧动画(ohos.animator)书写介绍-能够正常使用依赖库等-ArkUI基础组件介绍-全过程实战项目分享-从零开发到上线-优雅草卓伊凡
|
2月前
|
缓存 安全 Linux
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
181 23
|
4月前
|
JavaScript 前端开发 Python
python中的OS模块的基本使用
欢迎来到瑞雨溪的博客,一名热爱JavaScript与Vue的大一学生。博客分享前端技术及全栈开发经验,持续更新中,期待您的关注和支持!🎉🎉🎉
59 0
|
5月前
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
65 1
|
4月前
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
161 0
Vanilla OS:下一代安全 Linux 发行版
|
1月前
|
运维 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot 是阿里云推出的一款操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行和系统运维调优等功能。通过简单的命令行操作,用户可以快速获取所需信息并执行任务,极大提升了Linux系统的使用效率。安装步骤简单,只需在阿里云服务器上运行几条命令即可完成部署。使用过程中,OS Copilot不仅能帮助查找命令,还能处理文件和复杂场景,显著节省了查找资料的时间。体验中发现,部分输出格式和偶尔出现的英文提示有待优化,但整体非常实用,特别适合Linux初学者。
156 10
|
2月前
|
弹性计算 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot是由阿里云推出的操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行等功能,极大提升了Linux系统的使用效率。用户只需通过简单的命令或自然语言描述问题,OS Copilot即可快速提供解决方案并执行相应操作。例如,查询磁盘使用量等常见任务变得轻松快捷。此外,它还支持从文件读取复杂任务定义,进一步简化了操作流程。虽然在某些模式下可能存在小问题,但总体上大大节省了学习和操作时间,提高了工作效率。
155 2
OS Copilot-操作系统智能助手-Linux新手小白的福音
|
2月前
|
弹性计算 运维 Ubuntu
os-copilot在Alibaba Cloud Linux镜像下的安装与功能测试
我顺利使用了OS Copilot的 -t -f 功能,我的疑惑是在换行的时候就直接进行提问了,每次只能写一个问题,没法连续换行更有逻辑的输入问题。 我认为 -t 管道 功能有用 ,能解决环境问题的连续性操作。 我认为 -f 管道 功能有用 ,可以单独创建可连续性提问的task问题。 我认为 | 对文件直接理解在新的服务器理解有很大的帮助。 此外,我还有建议 可以在非 co 的环境下也能进行连续性的提问。
92 7
|
2月前
|
存储 运维 安全
深入解析操作系统控制台:阿里云Alibaba Cloud Linux(Alinux)的运维利器
本文将详细介绍阿里云的Alibaba Cloud Linux操作系统控制台的功能和优势。
124 6
|
2月前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享

热门文章

最新文章