python3初识 之 文件操作

文件基本操作:

 1 f = open('cup.txt','r',encoding='utf-8')
 2 data = f.read()#输出字符串类型
 3 print(data)
 4 f.close()
 5 
 6 f = open('cup.txt','r+',encoding='utf-8')#文件句柄
 7 data = f.read()
 8 data_1 = f.readline()#每次读一行,返回字符串
 9 data_2 = f.readlines()#全部读出来生成列表
10 f.write('余生请多指教,\n')
11 print(data)
12 f.close()

光标操作:

1 f = open('cup.txt','r',encoding='utf-8')
2 print(f.tell())#获得光标当前位置
3 print(f.readline())
4 print(f.readline())
5 print(f.tell())
6 f.seek(0)#光标返回指定位置
7 print(f.tell())
8 print(f.encoding)#编码

强制刷新:

1 #f.flush()#强制刷新
2 import sys, time
3 for i in range(50):
4     sys.stdout.write('#')
5     sys.stdout.flush()
6     time.sleep(0.1)
7 '''
8 #f.truncate()#截断

文本内容打印,并更换某行内容:

1 f = open('cup.txt','r',encoding='utf-8')
2 count = 0
3 for line in f:
4     if count == 6:
5         print('-------------我是分割线lalalalalalalalalal----------------')
6         count += 1
7         continue
8     count += 1
9     print(line)

文件修改:(创建新文件用以修改)

1 f = open('cup.txt','r',encoding='utf-8')
2 f_new = open('cup1.txt','w',encoding='utf-8')
3 for line in f:
4     if "让世界都认识" in line:
5         line = line.replace("让世界都认识","让世界都认识CZZ")
6     f_new.write(line)
7 f.close()
8 f_new.close()

with语句:

with open("filename") as f1,\
    open("filename") as f1:#自动关闭文件
    print("hello world")

文件打开模式:

打开文件的模式有:

  • r,只读模式(默认)。
  • w,只写模式。【不可读;不存在则创建;存在则删除内容;】
  • a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

"+" 表示可以同时读写某个文件

  • r+,可读写文件。【可读;可写;可追加】
  • w+,写读
  • a+,同a

"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

  • rU
  • r+U

"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

  • rb
  • wb
  • ab
posted @ 2019-01-19 16:07  椰汁软糖  阅读(156)  评论(0编辑  收藏  举报