open()函数之文件操作

 1 #open() 文件操作
 2 #打开文件的模式有:
 3 r,只读模式【默认】
 4 w,只写模式【不可读;不存在则创建;存在则清空内容;】
 5 x,只写模式【不可读;不存在则创建,存在则报错】
 6 a,追加模式【可读;不存在则创建;存在则只追加内容】
 7 
 8 “+” 表示可以同时读写某个文件
 9 r+,读写【可读,可写】
10 w+,写读【可读,可写】
11 x+,写读【可读,可写】
12 a+,写读【可读,可写】
13 
14 “b”表示以字节的方式操作
15 rb 或 r+b
16 wb 或 w+b 
17 xb 或 x+b
18 ab 或 a+b 
19 注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型
20 ----------------------------------------------------------------------------------------------------------------
21 # f = open("db", "r",encoding='utf-8')  #只读;
22 # f = open("db", "w",encoding='utf-8')  #只写,先清空源文件;
23 # f = open("db", "x",encoding='utf-8')  #文件存在,报错;文件不存在,创建文件并只写;
24 # f = open("db", "a",encoding='utf-8')  #追加
25 ----------------------------------------------------------------------------------------------------------------
26 # f = open("db", "r",encoding='utf-8')
27 # data = f.read()            #读取文件
28 # print (data,type(data))
29 # f.close()                    #文件关闭
30 ----------------------------------------------------------------------------------------------------------------
31 # f = open("db", "a",encoding='utf-8')
32 # data = f.write('张亮|456')#追加文件
33 # print (data,type(data))
34 # f.close()
35 ----------------------------------------------------------------------------------------------------------------
36 # f = open("db", "rb",) #加了b,表示说告诉python ,不要再帮我处理了,直接返回字节类型
37 # data = f.read()
38 # print (data,type(data))
39 # f.close()
40 ----------------------------------------------------------------------------------------------------------------
41 # f = open("db", "r+",encoding='utf-8')
42 # data = f.read()     #先读取
43 # print (data,type(data))
44 # f.write("66666")      #再追加
45 # f.close()
46 ----------------------------------------------------------------------------------------------------------------
47 f = open("db",'r+',encoding="utf-8")
48 data = f.read(1)#如果打开模式没有b,则read,按照字符读取
49 print(f.tell())#tell当前指针所在的位置(字节)
50 f.seek(f.tell())#当前指针位置开始向后覆盖(字节)
51 f.write("666")
52 f.close
53 ----------------------------------------------------------------------------------------------------------------
54 #for循环文件对象 f = open(xxx),循环文件的每一行
55 f = open("db",'r+',encoding="utf-8")
56 for line in f:
57     print(line)
58 ----------------------------------------------------------------------------------------------------------------
59 #with同时打开两个文件
60 with open('db1') as f1, open('db2') as f2:
61     pass
原文地址:https://www.cnblogs.com/zhangjianghua/p/8417054.html