python-----读写操作
1. 文件的读取
注意:在windows中文件的路径是这样:C:\Users\name\mystuff 。由于\u在python中表示转义如果使用此文件路径就会报错。解决方法:
a.把斜杠\改为反斜杠/ 例如:C:/users/name/mystuff
b.使用(r'C:/user/name/stuff') 表示原始文件路径
打开文件
使用内置函数 open()打开文件: f = open('C:/user/name/stuff/test.txt','r')
调用read()方法读取文件全部内容:f.read()
最后调用close()方法关闭文件: f.close()
为了防止读取文件出错,无法调用close()。可使用try.......finally 来搞定
例如:
file_object = open('ex15_sample.txt','r') 注:文本文件用'r'来读取,二进制文件用'rb'来读取
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
以上代码太繁琐,Python 讲究的是简单所以可以用with语句实现:
例如:with open('C:/user/name/stuff/test.txt','r') as f:
print(f.read())
按行读取文件
f = file_object.readlines( ) 注:如是文本文件可以遍历获得每行内容
f = file_object.readlines(100) 按括号内的字节大小读取文件
写入文件
f= open('thefile.txt', 'w') 注:用‘w'写入文本文件,用’wb'写入二进制文件,用'w+'追加写文件。
f.write(all_the_text)
f.close( )
用with语句实现为:
with open('C:/user/name/stuff/test.txt','w') as f :
file_object.write( f )
写入多行
file_object.writelines( f ) 注:调用writelines 写入多行在性能上要比使用write一次性写入要高。