zoukankan      html  css  js  c++  java
  • 第六天——+模式(四)


    +模式


    一.读写模式

    对于读写模式,必须是先读后写,因为光标默认在开头位置,当读完了以后再进行写入.我们以后使用频率最高的模式就是r+

    1.1 r+模式

    看下正确的操作:

    f1 = open('../path1/小娃娃.txt',mode='r+',encoding='utf-8')
    msg = f1.read()
    f1.write('这支烟灭了以后')
    f1.flush()
    f1.close()
    print(msg)
    结果:
    正常的读取之后,写在结尾
    

    看下错误的操作:

    f1 = open('../path1/小娃娃.txt',mode='r+',encoding='utf-8')
    f1.write('小鬼')
    msg = f1.read()
    f1.flush()
    f1.close()
    print(msg)
    
    结果:
    这样写会把小鬼写在开头,并且读出来的是小鬼之后的内容
    

    r+模式一定要记住是先读后写

    1.2 r+模式坑

    深坑请注意: 在r+模式下. 如果读取了内容. 不论读取内容多少. 光标显示的是多少. 再写入 或者操作文件的时候都是在结尾进行的操作.

    二.写读模式

    先将所有的内容清空,然后写入.最后读取.但是读取的内容是空的,不常用

    f1 = open('../path1/小娃娃.txt',mode='w+',encoding='utf-8')
    f1.write('小鬼')
    msg = f1.read()
    f1.flush()
    f1.close()
    print(msg)
    

    有人说,先读在写不就行了.w+模式下 其实和w模式一样,把文件清空了,在写的内容.所以很少人用

    追加读(a+,a+b)

    a+模式下,不论是先读还是后读,都是读不到数据的

    f = open('../path1/小娃娃.txt',mode='a+',encoding='utf-8')
    f.write('阿刁')
    f.flush()
    msg = f.read()
    f.close()
    print(msg)
    

    还有几个带b的模式,其实就是对字节的一些操作,就不多叙述了.

    有志者,事竟成,破釜沉舟,百二秦关终属楚; 苦心人,天不负,卧薪尝胆,三千越甲可吞吴。 想到与得到中间还有两个字——做到。
  • 相关阅读:
    Android SeekBar 垂直滚动条实现——Kotlin
    百度地图JavaScript API——去除左下角LOGO
    C# Socket域名连接
    d
    WPF MVVM手敲简单框架
    WPF播放视频、WPF_MediaElement用法
    C#分割字符,Split(new char[2] { '$', ',' }); 和Split( new string[]{"$",","}, StringSplitOptions.RemoveEmptyEntries); 的小计
    使用CloudFlare给IPv6 VPS提供IPv4+6端口转发服务
    多线程处理和WPF访问UI
    MVC4Html Helper
  • 原文地址:https://www.cnblogs.com/huoxc/p/12954698.html
Copyright © 2011-2022 走看看