一、open函数
file object = open(file_name [, access_mode][, buffering])
1)需要注意,当需要打开特定路径下的文件时,可以直接使用绝对路径,但是需要规避转义字符的问题,并且对应的文件需要附带后缀名
2)读入的文件是以字符串的方式进行存储的,文件只是连续的字节序列,数据的传输经常会用到字节流,无论字节流是由单个字节还是大块数据组成。
3)通过open()函数打开文件后,显示格式为<_io.TextIOWrapper name='name.txt' mode='r' encoding='UTF-8'>
在windows系统当中读取文件路径可以使用\,但是在python字符串中\有转义的含义,如\t可代表TAB,\n代表换行,所以我们需要采取一些方式使得\不被解读为转义字符。
1、在路径前面加r,即保持字符原始值的意思。
open(r'c:\Users\mshacxiang\VScode_project\web_ddt','r')
2、替换为双反斜杠
open('c:\\Users\\mshacxiang\\VScode_project\\web_ddt','r')
3、替换为正斜杠
open('c:/Users/mshacxiang/VScode_project/web_ddt','r')
二、文件操作
open() 成功执行并返回一个文件对象之后, 所有对该文件的后续操作都将通过这个"句柄"进 行. 文件方法可以分为四类: 输入, 输出, 文件内移动, 以及杂项操作。
1、输入
read() 方法用来直接读取字节到字符串中, 多读取给定数目个字节。
readline() 方法读取打开文件的一行(读取下个行结束符之前的所有字节)。
readlines() 方法并不像其它两个输入方法一样返回一个字符串.。它会读取所有(剩余的)行然 后把它们作为一个字符串列表返回。
2、输出
write() 内建方法功能与 read() 和 readline() 相反. 它把含有文本数据或二进制数据块的 字符串写入到文件中去。
3、文件内移动
seek() 方法(类似 C 中的 fseek() 函数)可以在文件中移动文件指针到不同的位置。offset 字节代表相对于某个位置偏移量. 位置的默认值为 0 , 代表从文件开头算起(即绝对偏移量), 1 代 表从当前位置算起, 2 代表从文件末尾算起。
4、文件迭代
一行一行访问文件很简单:
for eachLine in f:
: