您的位置:首页 > 编程语言 > Python开发

Python3.3 学习笔记6 - 文件

2012-12-17 12:01 387 查看
使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。(不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法。)

文件属性:

closed #标记文件是否已经关闭,由close()改写

encoding #文件编码

mode #打开模式 r w a U

name #文件名

newlines #文件中用到的换行模式,是一个tuple

softspace #boolean型 ,一般为0,据说用于print

打开文件:open(路径+文件名,读入模式,缓存区),后面两项可选

读入模式(可叠加使用):

r只读(默认),

w写入(会覆盖原有文件),

x新建并写入,

a追加(如果文件不存在,创建对应文件),

b二进制模式,

t文本模式,

+读写文件,

U提供通用换行符。

举例:file1 = open('c://test.txt', 'wb+'),以二进制读写模式打开test.文件,注意路径需要使用//。

读入文件内容:

file1.read([size]):size为读取长度,以byte为单位,若size未指定则返回整个文件。如果文件大小>2倍内存则有问题。f.read()读到文件尾时返回""(空字串)

file1.readline([size]):读出一行数据的size个字符到行尾,若size未指定,返回整行数据。

file1.readlines([size]):返回包含size行的列表,size 未指定则返回全部行。

写入或追加文件内容w,a:关闭文件:

file1.write(string):写入一个字符串,原有文件内容会被删除。(只能写入一行数据,换行用'\n'或者写入字符串就已经换行。)

file1.writelines(list或者tuple):将列表或者元组按照行写入文件。

file1.append(string):追加新加内容到文件末尾

指针相关关闭文件:file1.colse()

file1.tell():返回一个表示当前文件指针位置的整数

file1.seek(偏移量,[起始位置]):移动文件指针(偏移量:以比特为单位,可正可负;起始位置:00文件头,默认值,1-当前位置,2-文件尾)

其他补充

使用pickle模块在文件中存储和恢复python对象,例:

testFile = open('pickle.txt','w')
#and import pickle
import pickle
testDict = {'name':'Chen Zhe','gender':'male'}
pickle.dump(testDict,testFile)
testFile.close()
testFile = open('pickle.txt','r')
print pickle.load(testFile)
testFile.close()


python中统一用\n换行,用U模式打开文件,就是支持所有的换行模式,也就说‘\r’ '\n' '\r\n'都可表示换行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: