python基础之文件读写

    科技2022-07-10  121

    python基础之文件读写

    文件读写

    注意:需要手动创建几个*.txt

    file1=open('d:\\note1.txt') #可以多加一个\让\n的特殊含义不生效 file1=open('d:/note1.txt') #用/替换\,效果一样 file1=open(r'd:\note1.txt') #前方加一个r,让后方的转义符都不生效 file1=open('d:/json3.txt','r') #r读取模式,w写入模式(清空之前的内容),a追加写入模式,如果不写第二个参数,则缺省值为读取模式 print(file1.read()) file1.close() file1=open('d:/20201003.txt','w') file1.write('今天天气不错哦!') file1.close() file1=open('d:/20201003_1.txt','a') file1.write('挺风和日丽的!') # file1.read()#r,w,a要么只能读,要么只能写,不能同时进行读取和写入 file1.close() #当需要同时进行读取和写入时,可以使用r+,w+,a+ #r+遇到不存在的路径会报错 file1=open('d:/20201003_2.txt','w+') file1.write('出去玩可好!') file1.seek(0) #光标回到文件开头的位置 print(file1.read()) #如果上一行的seek(0)不写,则读取不到内容,因为写入内容之后光标位于内容的后方 file1.close() #seek(m,n)函数,m表示光标向后偏移几位,m为0时表示位于文件开头. #n默认为0,不需要写,也可以写1,或者2,当写1,或者2时,只有在rb模式下才生效(二进制模式) #seek(6,0)这种表示从文件开头,向右偏移6位 #seek(2,1)表示从光标的当前位置,向右偏移2位 #seek(-1,2)表示从文件末尾,向左偏移1位 file1=open('d:/20201003.txt','rb') file1.seek(-3,2) #file1.seek(2,1) print(file1.read()) file1.close() #r+,w+,a+都支持同时读取和写入,但是有一定的区别 #r+ 当文件不存在时,报错,写入时,覆盖之前的内容 #w+ 当文件不存在时,新建文件,写入时,清空之前的内容 #a+ 当文件不存在时,新建文件,写入时,接着以前的内容往后写 file1=open('d:/20201003_4.txt','r+') file1.write('GHJKL') file1.close() #with open方法,和open方法用法基本一致,不过不需要写close方法,另外要注意缩进 with open ('d:/20201003_5.txt','w+') as file1: file1.write('去哪玩好呢!') file1.seek(0) print(file1.read()) #with open也可以同时打开多个文件 with open('d:/20201003.txt')as file1,open('d:/20201003_1.txt') as file2,open('d:/20201003_4.txt') as file3: print("file1:",file1.read()) print("file2:",file2.read()) print("file3:",file3.read()) with open('d:/20201003_6.txt','rb') as file1: # print(file1.read()) #read打开文件的所有内容 # print(file1.readline()) #读取一行内容,可以加一个参数n,表示读取几个字符 a=file1.readlines()#读取整个文件,返回值是一个列表,每个元素是一行 print(a) for one in a: print(one.decode('utf8'))

    打印结果演示

    出去玩可好! b'\xb6\xa3\xa1' 去哪玩好呢! file1: 今天天气不错哦! file2: 挺风和日丽的! file3: GHJKL [b'\xe6\xa1\x83\xe5\xad\x90\xe7\x8c\xab\xe7\x9a\x84\xe5\xb8\x83\xe5\x81\xb6\xe5\x86\x99\xe4\xba\x86\xe7\x82\xb9\xe4\xb8\x9c\xe8\xa5\xbf\xe7\x94\xa8\xe4\xba\x8e\xe6\x89\x93\xe5\x8d\xb0\xe6\xbc\x94\xe7\xa4\xba'] 桃子猫的布偶写了点东西用于打印演示
    Processed: 0.008, SQL: 8