python 文件写入与储存
python使用open()这个函数来打开文件返回对象:
open 第二参数
"r" | 以只读方式打开文件 |
"w" | 以写入方法打开文件,会覆盖已储存的内容 |
"x" | 如果存在该文件,打开会引发异常 |
"a" | 以写入模式打开文件,如果存在该文件,会在末尾添加 |
"b" | 以二进制模式打开文件 |
"t" | 以文本模式打开文件(默认) |
"+" | 可读写模式(可添加到其他模式中去) |
"U" | 通用换行符支持 |
文件对象的方法:
close() | 关闭文件 |
read(size=-1) | 从文件中读取size个字符,当未给定size或给定负值时,读取剩余的所有字符,然后作为字符返串回 |
readline() |
从文件中读取一整行字符串
|
write(str) | 将字符串str写入文件中 |
writelines(seq) | 向文件中写入字符串序列seq,seq应该是一个返回字符串的可迭代对象 |
seek(offset,from) |
在文件中移动文件指针,从from(0代表文件起始位置,1,代表当前位置,2代表文件末尾)偏移offset个字节 |
tell() | 返回当前在文件中的位置 |
文件的读取与定位:
1 >>>f=open("d:/文本文件/1.txt") 2 >>>f.read() 3 '你好,朋友\nhello friend' 4 >>> f.tell() 5 24 6 >>>f.seek(0,0) #将文件指针设置到起始位置 7 0 8 >>>f.read(5) #按字节为单位读取5个字节 9 '你好,朋友' 10 11 >>> f.readline() #读取一行(即从文本指针到\n) 12 '你好,朋友\n'
13
14
15 >>>f.seek(0,0)
16 >>>for each_line in f:
17 print(each_line) #使用迭代来返回每一行文本
文件的写入:
如果写入文件,确保以“w”或“a”模式打开 ,然后调writer()函数
1 f=open("d:/文本文件/1.txt",“w”) 2 3 f.write("大家好") 4 5 f.close()
实战: