1. 参数mode
'r' 读取模式;'w'写入模式;‘x’独占写入,文件已存在时报错;‘+’读写模式
‘a’附加模式;'b'二进制模式(与读写结合使用);‘t’文本模式
ps:r+/w+后者截断文件
默认'rt'
windows的换行是\r\n,unix的是\n,mac的是\r
f.write()
f.read()
f.close()
管道|将一个命令的标准输出链接到下一个命令标准输入
文件随机存取:seek() and tell()
seek()移动到指定位置,后面f.write()从该位置开始写入
tell()告诉当前处于什么位置
readline() readlines()
关闭文件:f.close()程序会在退出时自动关闭。python可能缓冲写入数据,因此中途崩溃可能没有写入,最好close一下。或者使用重置缓冲区flush()
确保文件关闭可以用try finally或者with
with:上下文管理器,__enter__ and __exit__,前者进入with时被调用,其返回值给as后面的变量;后者接受三个参数:异常类型、异常对象和异常跟踪,离开方法时被调用。
迭代文件内容:1.while read(); 2. while readline();3. for line in f.readlines()
大型文件,readlines不合适:
1.fileinput:for line in fileinput.input(filename)
2. 文件迭代器:for line in open(filename):
3. 标准输入:import sys for line in sys.stdin:
print写入文件:print("somthin", file = f) 自动在字符串末尾添加换行符
网友评论