【Python】文件及目录

文章目录


概要

本文主要将了打开文件的函数open()的参数,以及文件对象的函数,基于Python的os模块对目录进行操作,还有Pandas的基础知识。


一、文件对象的函数

1.1 open()函数

将某一文本文件打开为txtFile:

txtFile = open(filename, mode, buffering=-1, ecoding=None)

filename是文件名,也就是说当文本文件与py文件在同一目录下时如此打开,在不同目录下时文件名应该是文本文件的完整路径。mode是打开模式由两个字母组成,第一个字母是操作模式,第二个是文件打开类型。buffering是缓冲策略,负数表示按系统默认,0表示不缓存,1表示缓存,其他正整数指定缓冲区的大小。ecoding是文件的编码形式。文件打开模式字母意义如下:

字母 代表含义
" r " 只读模式(默认)
" w " 覆写模式(没有这个文件则创建,有则覆盖)
" a " 追加模式(没有这个文件则创建,有则追加内容)
" + " 与上面三个字母配合,表示可读可写
" t " 文本类型
" b " 二进制类型

1.2 文件对象的函数

函数 意义
open() 打开文件
resd(size) 以指定字节数读取,没有或为负数则读取全部内容
resdline() 读取整行
resdlines() 读取全部行并返回列表
write(s) 把字符串s写入文件,默认编码是utf-8 windows的默认编码是GBK,用ecoding="GBK"
writelines(s) 向文件写入元素全为字符串的列表,如需换行需自己写入换行符
seek(off, whence=0) 设置文件读写当前位置
tel() 返回文件当前读写位置
close() 关闭文件

1.3 with语句

在每次完成文件的操作后都需要调用close()函数来关闭文件,防止资源占用等问题,但手动调用太麻烦,可以使用with来代替。with是一个简洁高效的上下文管理器,以后会知道,他除了能管理文件还能管理网络连接。他的基本语法如下:

python 复制代码
with open() as file:	# file可以是任何名字用来表示后续在with里面对文件的操作              
	pass

二、基于os和os.path模块的目录操作

以下函数的参数除非标注均为存文件路径的变量,可以是绝对路径也可以是相对的。

函数 意义
os.listdir() 返回文件绝对路径
os.getcwd() 返回当前工作目录
os.walk(top) 从top目录开始遍历子目录及文件名,返回当前遍历到的目录路径,当前目录的子目录名,当前目录的下的文件
os.path.exists() 判断文件是否存在
os.path.join(path, name) 拼接文件路径
os.path.splitext() 返回文件名和扩展名
os.path.basename() 提取文件名
os.path.diename() 提取文件路径

三、基于Pandas的文件处理

3.1 Pandas读写各种类型文件

3.1.1 Pandas对文件读取的函数

读取函数 写入函数 文件类型
read_csv to_csv 读写CSV文件
read_excel to_excel 读写Excel文件
read_json to_json 读写JSON文件

3.1.2 Pandas读取文件函数的参数

参数 含义
sep 或 delimiter 列分割符
header 列名,如果文件中已经有列名则传None
index_col 作为索引的列名
skiprows 要跳过的文件头行数
na_values 用于处理缺失数据的字符串
encoding 字符编码方式

其他章节的内容

序列
集合与字典
函数
模块和包
异常
文件

相关推荐
小灰灰搞电子几秒前
Rust可以取代C++么?
开发语言·c++·rust
我送炭你添花2 分钟前
Pelco KBD300A 模拟器:06+2.Pelco KBD300A 模拟器项目重构指南
python·重构·自动化·运维开发
Swizard4 分钟前
别再只会算直线距离了!用“马氏距离”揪出那个伪装的数据“卧底”
python·算法·ai
cat三三5 分钟前
java之异常
java·开发语言
站大爷IP6 分钟前
Python函数与模块化编程:局部变量与全局变量的深度解析
python
奇树谦7 分钟前
【Qt实战】实现图片缩放、平移与像素级查看功能
开发语言·qt
我命由我1234514 分钟前
Python Flask 开发问题:ImportError: cannot import name ‘Markup‘ from ‘flask‘
开发语言·后端·python·学习·flask·学习方法·python3.11
wjs202417 分钟前
Go 语言指针
开发语言
databook22 分钟前
掌握相关性分析:读懂数据间的“悄悄话”
python·数据挖掘·数据分析