文件:在python是一种内存对象类型
通过open函数和file函数创建的 通过函数返回一个对象 这个对象就是文件对象
open函数能接受3个参数:文件名、打开模式、缓冲区大小。
其中后两个是可省的,当只有文件名以只读的方式打开文件,也就是只能读取不能写入。
打开模式包括:
r: 只读模式,相当于不写。缺省。如果文件不存在,则抛出错误)
w: 写入模式,此时会先将文档清空。如果文件不存在,则自动创建文件
r+: 读写模式(可读可写),此时不清空文档,写入内容会被加在文件开头
w+:读写模式,此时会清空文档
wb:二进制模式写入
a: 附加到文件末尾
读取 input = open('/tmp/spam','r')声明一个变量input调用open函数传两个参数
两个参数分别是(指定的文件路径和名称,文件模式)
input = open('data','r')r是指读取
input = open('data')与上一行相同'r'是默认值
astring=input.read()把整个文件读进单一字符串
astring=input.read(N)读取之后的N个字节(一个或多个)到一个字符串
astring=input.readline()读取下一行(包括行末标点符)到一个字符串
alist=input.readlines()读取整文件到字符串列表
写入 output = open('/tmp/spam','w')
output.write(astring)写入字符串到文件
output.writelines(alist)把列表内所有字符串写入文件
output.close()手动关闭(当文件收集完成时会替你关闭)
output.flush()把输出缓冲区刷到硬盘中,但不关闭文件
anyfile.seek(N)修改文件位置到偏移量N处以便进行下一个下操作
line.rstrip()删除末位空格
parts=line.split(“n”)以n为划分来拆分
下图是斜杠打反了无法换行!
这个是正确的
读取某一行分离split
EF=open('datafile.txt','w')import pickle
pickle.dump(D,F)
F.close()
F=open('datafile.txt')
E=pickle.load(F)
struct模块 是构造并解析打包二进制的数据
F=open('data.bin','wb')
import struct
bytes=struct.pack('>i4sh',7,'spam',8)
bytes
'\x00\x00\x00\x07spam\x00\x08'
F.write(bytes)
F.close()
F=open('data.bin','rb')
data=F.read()
data
'\x00\x00\x00\x07spam\x00\x08'
values=struct.unpack('>i4sh',data)
values
(7, 'spam', 8)
______________________________
import一个命令exists
将文件名字符串作为参数,如果文件存在的话,它将范围True, 否则将范围False
________
问题是
bytes用法
eval用法