Python读写文件
1. open
使用open打开文件后一定要记得调用 文件对象的close()方法。比如可以用try --finally语句来确保最后能关闭文件。
>>>f1 = open('thisfile.txt')
>>>try:
f1.read()
finally:
f1.close()
2. 读文件(read,readline,readlines)
①读文本文件
input = open('data','r')
input.read()
②读二进制文件
input2 = open('data','rb')
input2.read()
3. 写文件
output =open('data','w')
output =open('data','wb')
output =open('data','w+') //追加写文件, 相当于 open('data','a')
4.文件迭代
f = open ('test.txt')
for i in f.readlines():
print i
--------------------------------------------------------------------------------
应用:
一、用Python创建一个新文件,内容是从0到9的整数, 每个数字占一行:
#python
>>>f=open('f.txt','w') # r只读,w可写,a追加
>>>for i in range(0,10):
f.write(str(i)+'
')
. . .
>>> f.close()
二、文件内容追加,从0到9的10个随机整数:
#python
>>>import random
>>>f=open('f.txt','a')
>>>for i in range(0,10):
f.write(str(random.randint(0,9)))
. . .
>>>f.write('
')
>>>f.close()
三、文件内容追加,从0到9的随机整数, 10个数字一行,共10行:
#python
>>> import random
>>> f=open('f.txt','a')
>>> for i in range(0,10):
. . . for i in range(0,10):
f.write(str(random.randint(0,9)))
. . . f.write('
')
. . .
>>> f.close()
四、把标准输出定向到文件:
#python
>>> import sys
>>> sys.stdout = open("stdout.txt", "w")
>>> . . .
五、将记事本中的内容写入到一个列表中
f = open('test.txt','r')
name = []
for lines in f.readlines():
lines = lines.replace(' ','')
name.append(lines)
print name
f.close()