四、文件I/O#
1. 文件I/O简介#
- IO是两个单词的缩写,分别是Input和Output,输入和输出
- IO包含控制台IO以及文件IO
文件I/O的基本流程
- 打开文件
- 文件读写
- 关闭文件
2. 打开文件#
使用open函数,可以打开一个已经存在的文件,或者创建一个新文件
1 2 3 |
|
访问模式对应的功能如下:
功能 | r | r+ | w | w+ | a | a+ |
---|---|---|---|---|---|---|
读 | + | + | + | + | ||
写 | + | + | + | + | + | |
创建 | + | + | + | + | ||
覆盖 | + | + | ||||
指针在开始 | + | + | + | + | ||
指针在结尾 | + | + |
打开文件
1 |
|
如果没有传入打开模式,默认访问模式为
r
只读模式
3. 关闭文件#
可以使用f.close()方法关闭文件
1 |
|
注意:
一定要保证文件操作完之后要关闭掉,因为程序能打开的文件数量是有上限的,并且不关闭文件会造成内存泄漏
4. 文件读取#
read读取
read方法读取
格式为:
1 2 3 |
|
读取整个文件内容
1 |
|
读取5个数据
1 |
|
readline
readline指的是读取一行
1 |
|
也可以指定读取一行n个数据
1 |
|
readlines
readlines指的是读取整个文件,返回每一行数据的列表
1 |
|
5. 文件写入#
write
write写入字符串到文件中
1 |
|
writelines
writelines可以将容器中数据写入到文件中
1 2 3 |
|
6. 绝对路径和相对路径#
文件路径分为两种:相对路径和绝对路径
绝对路径
绝对路径指的是在电脑硬盘上真正保存的路径 绝对路径在不同的操作系统上写法是不一样的
如下就是绝对路径写法:
1 |
|
绝对路径的缺点
- 绝对路径写起来比较麻烦
- 如使用的项目文件移动了,那绝对路径就变化了,就需要重新修改
相对路径
相对路径就是相对于当前目录的路径 相对路径用.代表当前目录,使用..代表上一级目录 如果是当前路径可以省略./
例如,当前文件夹下的a.txt
:
1 2 3 |
|
上一级目录下的b.txt
1 |
|