首页 > 代码库 > Python<10>文件基础
Python<10>文件基础
常见的文件操作
output = open(‘data‘,‘w‘) #创建文件 w为写入
input = open(‘data‘,‘r‘) #r为读写 若不写属性 默认为r
aString = input.read() #读整个文件到一个字符串
aString = input.readlines() #读整个文件到字符串列表
aString = input.read(N) #读N个字节
aString =input.readline() #读一行
output.write(aString) #写入字符串带文件 在python3中,调用write会返回你写入的字符数。
output.writelines(aList) #将列表内所有字符串写入文件
output.close() #关闭
output.flush() #输出缓冲区刷到硬盘中,不关闭文件
anyFile.seek(N) #修改文件位置到偏移量N处以便进行下一个操作
for line in open(‘data‘):use line #一行一行读取
<1>打开文件
调用内置函数open 处理模式
‘r‘ 为默认值表示输入打开
‘w‘ 为输出生成并打开文件
‘a‘ 为追加内容而打开文件
在尾部加上b可以进行二进制数据处理,加上‘+‘可以同时为输入和输出打开文件。
<2>使用文件
文件迭代器是最好的读取行工具。
读回的数据是字符串,经过转换可得到你想要的python对象,当写入文件时,必须传递一个已经格式化的字符串。
close手动关闭文件是个好习惯,虽然python也会自动回收。
文件是缓冲的而且是可查找的。
由于文件的输入必须是严格的字符串,输入之前需要进行一些类型转换,输出得到的字符串变回你需要的类型也
需要一些转换,我们可以借助pickle在存储python的原生对象。
D = {‘a‘:1,‘b‘:2}F = open(‘datafile.pkl‘,‘wb‘)import picklepickle(D,F)F.close
将来要取出字典时
F = open(‘datafile.pkl‘,‘rb‘)E = pickle.load(F)E{‘a‘:1,‘b‘:2}
参考<<learning python>>