python学习,day3: 文件的读写
# coding=utf-8 # Author: RyAn Bi import sys f1 = open('yesterday2',mode='w',encoding='utf-8') #w 只能写,不能读,是覆盖之前的内容写 f1.write('我爱北京天安门\n') f1.write('天安门上太阳升\n') f1.close() f1 = open('yesterday2',mode='a',encoding='utf-8') #a 追加 f1.write('我爱北京天安门\n') f1.write('天安门上太阳升\n') f = open('yesterday',mode='r',encoding='utf-8') #r 只能读,不能写 #data = f.read() #print(f.readline()) #读1行 #for i in range(5): # print(f.readline()) #读5行 #Z不好的方法 ''' for index,line in enumerate(f.readline()): #显示下标号 print(line.strip()) if index == 9: print('--------------我是分割线----------') #continue print(line.strip()) ''' #好的方法 ''' count = 0 for line in f: print(line) if count == 9: print('------我是分割线------') count+=1 continue count +=1 ''' print(f.tell()) #读取光标的位置,按字符算 print(f.readline())#读了3行 print(f.readline()) print(f.readline()) print(f.tell()) #读取光标的位置,按字符算 f.seek(0) #光标归零 print(f.encoding) #编码方式 print(f.flush()) #刷新,不用等到缓存满了才写到硬盘里。 f3 = open('yesterday',mode='a',encoding='utf-8') #r+ 读写,w+ 写读(没啥用),a+追加读写,rb二进制文件(网络传输和读取),wb二进制写 f3.truncate(10) #截断10,不指定就是从0开始,如果什么都不写,就是清空,必须是'a',可以用seek指定起始位置
注,这是在硬盘中读写,不能插入,只能全部擦除和覆盖,只有在内存中才能插入。