1. 文件读取
(1) open(参数1,参数2)
参数1是文件的路径。
./表示当前目录下。
如果直接写文件名,也会在当前目录新建一个文件。
参数2缺省是r,表示的是读取。如果找不到文件会报错!!!
参数2=w,表示写入,且会清除文件之前的内容哦!!!。如果文件不存在会新建1个文件。
参数2=a,表示会接着后面写。如果文件不存在会新建一个文件。(a联想到append)
参数2=r+,表示可同时进行读写。之前的内容会覆盖。如果找不到文件会报错!!!
参数2=w+,表示可同时进行读写。且会清除文件之前的内容哦!!!。如果文件不存在会新建1个文件。
参数2=a+,表示可同时进行读写。会接着后面写。如果文件不存在会新建一个文件。(a联想到append)
注意:r+是覆盖,w+是清楚
(2) with open(参数1,参数2) as filex
with open('d:/note1.txt','r+') as file1 , open('d:/note2.txt','r+') as file12
file1.write('我用with open写入')
file2.write('我用with open写入')
优点:
1)可以同时打开多个文件
2)可以不用写close方法
(3) close()
用来关闭文件并释放资源。pycharm会自动关闭文件。但如果在其他IDE,就不太确定了。
所以如果使用open函数打开文件时,最好用close关闭文件,以便节省内存。
(4) read()
读取文件。
(5) readline()
用来读取文件的某一行数据。可以带参数,但参数表示的是该行的前参数个数据。
(6) readlines()
用来读取文件的多行数据。返回的数据类型是列表。
(7) read().splitlines()
读取多行数据,且去掉换行符号 ,返回的数据类型是列表。
2. 文件的写入
第1步:打开文件
file1 = open('d:\\not1.txt','w')
第2步:写入
flie.write('我开始写入文件了')
第3步:close
flie.close()
3. 文件路径中有转义字符怎么办呢?
处理1. 在反斜杠前面再增加一个反斜杠,如\\
file1 = open('d:\\not1.txt')
处理2. 在字符串外面加r,表示后面的字符串都不进行转义
file1 = open(r'd:\not1.txt')
处理3:使用正斜杠
file1 = open('d:/not1.txt')
4. 文件光标。
就是当前文件的光标的位置,每次读取操作后,光标会随着读取的长度而增加。
tell()函数:获取光标位置函数
通过tell()可以获取光标的位置。如file1.tell(),表示返回文件当前的光标位置。
seek(参数1,参数2)函数:光标偏移函数
参数1:光标偏移几位。可以正,也可以负。正表示向后偏移,负表示向前偏移。
参数2:缺省=0,表示从文件开头开始计算。如file1.seek(10),表示光标移动到10的位置
如果=1,表示从当前位置开始偏移
如果=2,表示从文件末尾开始偏移
参数2需要注意:
(1)参数2=1或,2,只有在rb模式才能使用。rb指的是以二进制方式读取文件。
(2)在rb模式下,\r\n表示换行。