一、文件内建函数open()和 file()
作为打开文件之门的"钥匙", 内建函数 open() [以及 file() ]提供了初始化输入/输出(I/O)
操作的通用接口。
open() 内建函数成功打开文件后时候会返回一个文件对象, 否则引发一个错误. 当操作失败, Python 会产生一个 IOError 异常。
1、 open() 的基本语法是:
file_object = open(file_name, access_mode='r', buffering=-1)
参数解释:
参数 | 含义 |
---|---|
file_name | 要打开的文件名字的字符串, 它可以是相对路径或者绝对路径. |
access_mode | 也是一个字符串, 代表文件打开的模式 |
(可选参数)buffering | 访问文件所采用的缓冲方式. 其中 0 表示不缓冲, 1表示只缓冲一行数据, |
常用文件对象访问模式:
文件模式 | 操作 |
---|---|
r | 以读方式打开(必须存在) |
w | 以写方式打开 (必要时清空) |
a | 以追加模式打开 (从 EOF 开始, 必要时创建新文件) |
r+、w+、a+ | 以读写模式打开 |
2、file()
open() 和 file() 函数具有相同的功能, 可以任意替换。
二、文件内建的方法
1、输入
read() :方法用来直接读取字节到字符串中, 最多读取给定数目个字节. 如果没有给定 size
参数(默认值为 -1)或者 size 值为负, 文件将被读取直至末尾。
readline() :方法读取打开文件的一行(读取下个行结束符之前的所有字节). 然后整行,包括行结束符,作为字符串返回. 和 read() 相同, 它也有一个可选的 size 参数, 默认为 -1, 代表读至行结束符. 如果提供了该参数, 那么在超过 size 个字节后会返回不完整的行。
readlines() :
读取所有(剩余的)行然后把它们作为一个字符串列表返回。
2、输出
write() :把含有文本数据或二进制数据块的字符串写入到文件中去。
writelines() :方法是针对列表的操作, 它接受一个字符串列表作为参数 , 将它们写入文件 . 行结束符并不会被自动加入 , 所以如果需要的话 , 你必须在调用writelines()前给每行结尾加上行结束符.
3、移动seek()
在文件中移动文件指针到不同的位置。
位置的默认值为 0 , 代表从文件开头算起(即绝对偏移量), 1 代表从当前位置算起, 2 代表从文件末尾算起.
seek(-12,1) #从当前位置忘前移动12位
f.tell() #查看当前位置
三、文件系统
对文件系统的访问大多通过 Python 的 os 模块实现。除了对进程和进程运行环境进行管理外, os 模块还负责处理大部分的文件系统操作, 应用程序开发人员可能要经常用到这些. 这些功能包括删除/重命名文件, 遍历目录树, 以及管理文件访问权限等。
os 模块的文件/目录访问函数 :
函数 :文件处理 | 描述 |
---|---|
remove() | 删除文件 |
rename() | 重命名文件 |
utime() | 更新时间戳 |
chdir() | 改变当前工作目录 |
chroot() | 改变当前进程的根目录 |
mkdir()/makedirs() | 创建目录/创建多层目录 |
rmdir()/removedirs() | 删除目录/删除多层目录 |
access() | 检验权限模式 |
chmod() | 改变权限模式 |
umask() | 设置默认权限模式 |