zoukankan      html  css  js  c++  java
  • python之文件的读取写入

    文件的读取与写入
    
    open()的方式,你必须先用Python内置的open()函数打开一个文件,才可以调用它进行读写。这种方式注意要养成读取或写入完毕之后,加一个close()方法习惯,避免资源占用。
    r模式是只读(默认模式,可以省略,省略时表示执行r模式),w写入模式,a追加写入模式,注意写入文件的 内容均为字符串类型 
    w模式是只用于写入,如果文件存在,直接清空原先的文本,写入新的文本,如果文件不存在,则新建写入。注意写入文件的内容均为字符串类型
    a模式是追加写入,在原先文本的后面写入内容。如果原文件不存在,则新建写入。
    例:
    #打开文件 encoding='utf-8'如果不写没有报错,就不需要写
    file1=open('d:/2020826.txt','w',encoding='utf-8') 
    file1.write('我是一个文件')   #写入
    file1.close()        #关闭
    
    文件打开后光标的位置移动seek()
    
    seek(offset [,from])  offset表示要移动的字节数   from表示光标从哪个位置开始移动,不写的话默认为0
    第二个参数 from有3个值。
    0:默认值,表示回到文件的开头。注意1,2,只有在rb模式(二进制模式)下才生效
    1:表示从文件的当前位置开始统计光标位置
    2:表示从文件的末尾位置开始统计光标位置 比如file1.seek(-3,2)表示光标跳转到文件末尾,然后向左偏移3位
    例:
    file1=open('d:/file1.txt','rb')
    file1.seek(-3,2)    #表示将光标跳转到文件末尾,然后向左偏移三位开始读取
    file1.close()

      读写操作  r+  w+ a+

    w+删除以前的内容,写入新的内容,如果找不到文件创建文件写入 
    r+覆盖以前的内容,如果找不到文件,则报错 注意:和w+区别是,r+从文件开头位置开始一边写入一边清空,w+是彻底删除后写入
    a+接着以前的内容往后写,如果找不到文件创建文件 
    file1=open('d:/323.txt','r+') 
    file1.write('电风扇') 
    file1.seek(0) 
    file1.close()
    
    再介绍一种写法 with open,它不需要我们自己写close方法关闭,比较好用,用法的话和open等同还可以打开多个文件
    with open('d:/123.txt','r+') as file1:    #打开文件并起别名file1
        file1.write('电风扇')
        file1.seek(0)
        print(file1.read())

    关于splitlines()、readline()、readlines()用法
    splitlines()  读取文件所有的内容,以‘行’为单位返回列表
    # splitlines是否保留换行符('
    ', '
    ', 
    ')默认为为False,不包含换行符,如果为 True,则保留换行符。
     
    readline()  一次读取文件中一行内容,里面可以有一个参数表示读取几个字符,返回字符串。如果执行两次readline(),中间会有一个空行
     
    readlines()  一次读取整个文件,其返回值是一个列表,每一行为一个元素
     




  • 相关阅读:
    【试水CAS-4.0.3】第07节_CASclient配置单点登录
    30分钟,让你彻底明白Promise原理
    【你离硅谷只差一步】网易中国创业家大赛项目火热征集中
    21分钟学会写编译器
    Android 模拟器下载、编译及调试
    GitLab 自动触发 Jenkins 构建
    微服务监控探索
    感觉要火!妹子实地采访网易猪厂程序员七夕怎么过
    延迟任务调度系统—技术选型与设计(下篇)
    使用QUIC
  • 原文地址:https://www.cnblogs.com/king2/p/13564259.html
Copyright © 2011-2022 走看看