文件
python中打开文件时除了包含一个“文件路径名称”,还会包含一个打开文件时的模式,常见的文件打开模式有以下参数:
r 以只读模式打开文件,并将文件指针指向文件头;如果文件不存在会报错
w 以只写模式打开文件,并将文件指针指向文件头;如果文件存在则将其内容清空,如果文件不存在则创建
a 以只追加可写模式打开文件,并将文件指针指向文件尾部;如果文件不存在则创建
r+ 在r的基础上增加了可写功能
w+ 在w的基础上增加了可读功能
a+ 在a的基础上增加了可读功能
b 读写二进制文件(默认是t,表示文本),需要与上面几种模式搭配使用,如ab,wb, ab, ab+(POSIX系统,包括Linux都会忽略该字符)
文件操作3步曲:打开,操作,关闭
在文件中写入内容
文件指针
文件指针标记从哪个位置开始读取数据,第一次打开文件时,通常文件指针会指向文件的开始位置,当执行了read方法后,文件指针会移动到读取内容的末尾
file.seek(0) # 移动文件指针到文件开头
正确读取大文件
file = open('passwd')
# 设定为无限循环是因为我们不知道循环条件
# 不知道文件到底有多少行
while True:
text = file.readline()
# 判断是否读取到了内容
# 如果文件指针到文件的最后一行,那么就读取不到内容了
if not text:
break
# 每一行的末尾有一个'\n',所以读取的内容是隔一行显示的
print text
file.close()
文件复制
打开一个已经存在的文件,读取完整的内容,并写到另一个文件中去
# 原文件以只读的方式打开
file_read = open('passwd')
# 目标文件以只写的方式打开
file_write = open('passwd_copy','w')
# 从原文件中读取内容
text = file_read.read()
# 将读取到的内容写到目标文件
file_write.write(text)
file_read.close()
file_write.close()