Python open读写文件

标签:
it |
分类: phthon |
1.open
使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />file_object
= open('thefile.txt')
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> try:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> all_the_text = file_object.read( )
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> finally:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> file_object.close( )
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
注:不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法。
2.读文件
读文本文件
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />input
= open('data', 'r')
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> #第二个参数默认为r
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> input
= open('data')
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
读二进制文件
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />input
= open('data', 'rb')
读取所有内容
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />file_object
= open('thefile.txt')
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> try:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> all_the_text = file_object.read( )
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> finally:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> file_object.close( )
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
读固定字节
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />file_object
= open('abinfile', 'rb')
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> try:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> while
True:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> chunk =
file_object.read(100)
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> if
not chunk:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> break
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> do_something_with(chunk)
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> finally:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> file_object.close( )
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
读每行
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />list_of_all_the_lines = file_object.readlines( )
如果文件是文本文件,还可以直接遍历文件对象获取每行:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />for
line in file_object:
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" /> process line
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
3.写文件
写文本文件
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />output
= open('data', 'w')
写二进制文件
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />output
= open('data', 'wb')
追加写文件
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />output
= open('data', 'w+')
写数据
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />file_object
= open('thefile.txt', 'w')
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" />file_object.write(all_the_text)
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Pythonopen读写文件" />file_object.close( )
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python
写入多行
http://www.cnblogs.com/Images/OutliningIndicators/None.gifopen读写文件" TITLE="Python open读写文件" />file_object.writelines(list_of_text_strings)
注意,调用writelines写入多行在性能上会比使用write一次性写入要高。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rU 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP 278)
w
a
r+
w+
a+
rb
wb
ab
rb+
wb+
ab+
a.
前一篇:什么是awk?