文件I/O是Python中最重要的技术之一,在Python中对文件进行I/O操作是非常简单的。
1.打开文件
语法:
open(name[, mode[, buffering]])
1.1文件模式
1 'r' 读模式
2 'w' 写模式
3 'a' 追加模式
4 'b' 二进制模式(可添加到其他模式使用)
5 '+' 读/写模式(可添加其他模式使用)
1.2缓冲区
open 函数的第三个参数( buffering
),表示文件的缓冲,当缓冲区大于0时(等于0时无缓冲,所有的读写操作都直接针对硬盘),Python会将文件内容存放到缓冲区(内存中),从而是程序运行的的更快,这时,只有使用 flush
或者 close
时才会将缓冲区中的数据更新到硬盘中。
2.文件的读写
2.1写入文件
#!/usr/bin/python
#-*- coding:UTF-8 -*-
#打开文件
f = open(r'D:\python\File\Pra_1.txt','w') try :
#写入文件
f.write('My name is OLIVER') finally:
#关闭文件
f.close()
2.2读取文件
#!/usr/bin/python
#-*- coding:UTF-8 -*-
f = open(r'D:\python\File\Pra_1.txt','r')
print(f.read())
f.close()
3.文件特殊读取
3.1遍历每个字符,一次读取
方法一:
#!/usr/bin/python
#-*- coding:UTF-8 -*-
f = open(r'D:\python\File\Pra_1.txt','r') char = f.read(1)
while char:
print(char)
char = f.read(1)
f.close()
方法二:
#!/usr/bin/python
#-*- coding:UTF-8 -*-
f = open(r'D:\python\File\Pra_1.txt','r')
while True:
line = f.read(1)
if not line:break
print(line)
f.close()
3.2遍历每一行读取
Pra_2.txt文件内容:
#!/usr/bin/python
#-*- coding:UTF-8 -*-
f = open(r'D:\python\File\Pra_2.txt','r') while True:
line = f.readline()
if not line:break
print(line)
f.close()
读取结果: