首页 > 代码库 > 【文件操作】

【文件操作】

#文件操作    文件操作模式    r:只读        f = open("小重山","r",encoding="utf-8")        f.read() #按字符读                f.readline() #按行读取,光标发生位置变化,读取的最后位置        f.readline()                f.readlines() #读取全部文件,光标发生位置变化,读取的最后位置    w:只写        f = open("小重山","w",encoding="utf-8")        f.write()  #先清空文件再写    a:追加        f = open("小重山","a",encoding="utf-8")        f.append("hah ") #默认写到最后,光标在最后,不清空内容         f.close()  #open 和 close成对出现,打开再关闭,不关闭数据存在缓存里        truncate(): #截断数据        r模式:无法截断,只读模式        w模式: 先清空,清空后没内容,截断无效        a模式:截断指定位置后的内容        r+: 读写模式        先读,读取完成后再写,光标默认在0位置,最后位置开始写    w+: 写读模式        先清空文件再写,写完可读取    a+: 追加读取模式        先追加内容,然后可以读取,光标默认在最后位置        with:   #同时管理多个文件对象            with open("file1","r") as f_read,open("file2","w") as f_write:        【例子】#迭代器number = 0for i in f: #将f做成一个迭代器,用一行取一行取完为止    number += 1    if number == 6:        i = "".join([i.strip(),"xinjiadeneirong"]) #取代加号        print(i.strip())    print(i.strip())#优化版number = 0for i in f :    if number == 6:        i = "".join([i.strip(),xinjiadeneirong])    print(i.strip())        #进度条import sys,timefor i in range(30):    sys.stdout.write("*")     sys.stdout.flush() #实时存储到硬盘    time.sleep(0.1)  #等待0.1秒返回执行结果#如何在磁盘修改文件    #常规思路,存储机制限制    number = 0     for line in f:        number +=1        if number == 3:            f.while(alex) #只是先写到缓存里,不能实现在硬盘读写                #再新建一个文件,一个读,一个写    with open("小重山","r",encoding="utf-8") as f_read,open("小重山2","w",encoding="utf-8")        number = 0     for line in f_read:        number += 1        if number == 5:            line="".join([line.strip(),"alex\n"])        f_write.write(line)    #作业涉及 a = str({"beijing":{"1":111}}) #转换为字符串类型print(a)a =eval(a) #转换回原来的类型 

 

【文件操作】