推荐书籍
Python 核心编程(第二版)
python Cookbook
流畅的编程(Fluent Python)
文件操作
-
txt
-
csv
-
json
-
html
-
mp4
文件操作的流程
-
打开—>open()
-
读/写---->read()/write()
-
关闭---->close()
用途 | 方法 | 功能 |
---|---|---|
打开/关闭文件 | f=open(file) | 打开文件 |
close() | 关闭文件 | |
读写文件内容 | f.read([size]) | 从文件中读取指定的字节数;若未指定,读取所有 |
f.readlines([size]) | 读取整行,包括/n | |
f.readlines([size]) | d读取所有行,并返回列表 | |
f.write(str) | j将字符串写入文件,并返回字符串长度 | |
f.writelines(seq) | 向文件写入一个序列字符串列表,如果要换行,需要自己加入换行符 | |
f.flush() | 刷新文件缓冲,直接把内部缓冲的数据写入文件 | |
文件的定位 | f.seek(offset) | 设置文件的当前位置,即指针位置 |
f.tell() | 返回文件的当前位置,即指针位置 | |
文件的打开和关闭
内置函数:open(),创建一个file对象,之后才可以用它调用相关的方法
格式:
file_object=open(file,[,mode][,encoding='utf-8'],[,buffering])
解释:
file_object —>open() 返回的文件对象
file ---->要打开的文件
mode---->指定模式:只读,写入,追加等等。表,一般默认为只读
encoding —>指定文件编码,usually,utf-8/GBK
buffering ----> 若设置为0,不会有寄存;设置为1,访问文件时会寄存行,设为大于1的数,表明是寄存区的缓冲大小;如设为负数,则缓冲区大小为系统默认
模式 | 描述 |
---|---|
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。 |
r+ | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 |
w | 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
w+ | 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
文件对象的属性
属性 | 描述 |
---|---|
f.name | 返回文件的名称 |
f.mode | 返回打开文件的访问模式 |
f.closed | 关闭文件 |
关闭
f.close()
文件的读写
读
-
f.read([size])
-
从文件指针处读取
-
传递size,指定读取的字节数。
-
-
readline()
-
readlines()
写
write()
writelines()
定位读取
f.tell()
获取文件的当前读取的位置
f.seek()
- seek(offet[,from])
- offset,要移动的字节数
- from,指定偏移的参考位置
- 0–>从开头偏移
- 1–>当前位置偏移
- 2–>从末尾偏移
f.seek()
-
seek(offet[,from])
- offset,要移动的字节数
- from,指定偏移的参考位置
- 0–>从开头偏移
- 1–>当前位置偏移
- 2–>从末尾偏移