zoukankan      html  css  js  c++  java
  • python文件读写详解

    • # Python3
    • open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
       

    文件打开模式     描述

          r              以只读模式打开文件,并将文件指针指向文件头;如果文件不存在会报错

          w             以只写模式打开文件,并将文件指针指向文件头;如果文件存在则将其内容清空,如果文件不存在则创建

          a              以只追加模式打开文件,并将文件指针指向文件尾部,若文件不存在则创建

          r+            在r的基础上增加了可写功能

          w+           在w的基础上增加了可读功能

          a+            在a的基础上增加了可读功能

          b              在读写而二进制文件,需要与上面几种模式搭配使用,如ab,wb,ab+

    • r+会覆盖当前文件指针所在位置的字符,如原来文件内容是"Hello,World",打开文件后写入"hi"则文件内容会变成"hillo, World"
    • w+与r+的不同是,w+在打开文件时就会先将文件内容清空,不知道它有什么用
    • a+与r+的不同是,a+只能写到文件末尾(无论当前文件指针在哪里)

    python文件操作步骤:

    读取文本文件:song.txt  

    f=open('song.txt','r')

    print(f.read())

    f.close()

    最佳实现:

    为了避免忘记或者为了避免每次都要手动关闭文件,我们可以使用with语句(一种语法糖,语法糖语句通常是为了简化某些操作而设计的)。with语句会在其代码块执行完毕之后自动关闭文件。因此我们可以这样来改写上面的程序:

    with open('song.txt','r')as f:
    print(f.read())

    python文件读取相关方法:

    方法               描述

    read()         一次读取文件所有内容,返回一个str

    read()         每次最多读取指定长度的内容,返回一个str;

    rendlines()  一次读取文件所有内容,按行返回一个list

    readline()    每次只读取一行内容

    此外,还要两个与文件指针位置相关的方法

    方法               描述

    seek(n)      将指针移动到指定字节的位置

    tell()            获取当前文件指针所在字节的位置

    file类的其他方法

    方法                        描述

    flush()                刷新缓冲区数据,将缓冲区的数据立即写入文件

    next()                 返回文件下一行,这个方法也是file对象实例可以被当做迭代器使用的原因

    write(str)            讲字符串写入文件,没有返回值

    我是kelly-凯莉 每天努力一点点,幸运就多一点点
  • 相关阅读:
    npm WARN saveError ENOENT: no such file or directory的解决方法
    简单的webpack打包案例
    JS中用encodeURIComponent编码,后台JAVA解码
    说 Redis
    let the cat out of the bag
    简述C# volatile 关键字
    螃蟹怎么分公母?是用冷水上锅还是热水蒸呢?
    Mysql截取字符串 更新字段的部分内容
    Ajax 获取数据attr后获取不到
    如何限制域名访问?白名单机制
  • 原文地址:https://www.cnblogs.com/kelly11/p/11800345.html
Copyright © 2011-2022 走看看