首页 > 其他 > 详细

文件操作扩展

时间:2021-01-08 09:26:03      阅读:28      评论:0      收藏:0      [点我收藏+]

1.“r+”模式

r+ 写入的位置是 当前光标所在位置,会直接改写当前位置的值
r+ 可以续写么? 可以,但是必须把光标挪到最后
r 没有创建文件的能力

r_file = open("r.txt", "r+", encoding="utf-8")
r_file.write("bbb\n")
r_file.close()

r_file1 = open("r.txt", "r+", encoding="utf-8")
print(r_file1.read()) #读全文
print(r_file1.tell()) #获取当前光标所在位置
r_file1.write("aaa\n")
r_file1.close()

2.“w+”模式

w+ 拥有写入权限,可以创建文件
w 所有的write操作是先写在内存中,只有结束的时候才会执行进去
w+ 和 r+ 的区别是 r+ 只在当前位置写入,w+ 是全部重写内容

3.“w”模式追加

先读取,后写入的方式实现用w模式追加
做的所有操作都是在内存中操作,并没有落地到磁盘
解决w模式会清空替代的方式

file2 = open("w1.txt", "r", encoding="utf-8")
txt = file2.read()
print(txt)
txt = txt + "abcd\n"
txt = txt.replace("200", "200000")
#

# 以写到模式打开文件,写入内容,这个内容来自于内存
file1 = open("w1.txt", "w", encoding="utf-8")
file1.write(txt)

file2.close()
file1.close()
file = open("w1.txt","r",encoding="utf-8")
txt = file.read()
print(txt)

file1 = open("w2.txt","w",encoding="utf-8")
file1.write(txt)

file.close()
file1.close()

3.下列数据是用户信息表,基于性别,把男性写入到nan.txt,女性写入到nv.txt

1   xiaowang    男
2 xiaohei 女
3 xiaohong 男
4 xiaobai 男
5 xiaozi 女
方法一:
file = open("w.txt","r",encoding="utf-8")
file1 = file.readlines()
for line in file1:
    print("line::", line.strip())
    if line.strip().count("") > 0:
        file1 = open("nan.txt", "a+", encoding="utf-8")
        file1.write(line)
    if line.strip().count("") > 0:
        file2 = open("nv.txt", "a+", encoding="utf-8")
        file2.write(line)
file.close()
file1.close()
file1.close()

方法二:(需要手动创建文件nan.txt、nv.txt, “r+”模式没有创建文件的能力)

file = open("w.txt","r",encoding="utf-8")
file1 = file.readlines()
for line in file1:
    if line.strip().count("") > 0:
        file1 = open("nan.txt", "r+", encoding="utf-8")
        print(file1.read())
        print(file1.tell())
        file1.write(line)
    if line.strip().count("") > 0:
        file2 = open("nv.txt", "r+", encoding="utf-8")
        print(file2.read())
        print(file2.tell())
        file2.write(line)

file.close()
file1.close()
file1.close()

 

文件操作扩展

原文:https://www.cnblogs.com/huahuacheng/p/14249346.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!