zoukankan      html  css  js  c++  java
  • Python文件操作汇总

    python2.7

    1. 文件的打开(内建函数)  open(file_path,mode=‘r’,buffering=-1)

    <1> file_path是必须给出的参数,是要读取文件的绝对或者相对路径,要包含文件后缀.

    绝对路径的3种表示方法:>>> file_path = "C:/tmp/123.txt"       >>> file_path = "C:\tmp\123.txt"   >>> file_path =r "C: mp123.txt"

    相对路径的两种表示方法: ./表示当前文件夹  ../表示父文件夹

    文件路径就是一个字符串,所以应该特别注意字符串中包含反斜杠的时候应该如何正确表示。‘\’真正表示的是‘’,  修饰符‘r’表示python中的原生字符。

    <2>mode 指出了文件的打开方式,具体打开方式有哪些,这里不再累赘。

    <3>buffering 参数指出读取文件的时候有关缓冲的选项

    buffering = 0 表示不适用缓冲      
    buffering = 1 缓存一行
    buffering = 其他正整数N 缓存N个字节
    buffering = 负数 使用系统默认,根据不同的系统而定

    <4>open()函数的返回值是一个file object, 我的理解是一个指向文件在内存中的首地址。

     2. 文件的关闭(内建函数)close()

        为了安全,以及规范,打开文件使用完成后,务必使用close()将文件关闭。

        >>> data_file = "E:/tmp/data.txt"

        >>> f = open(data_file,'rt')

        >>>这里是文件对象的具体操作

        >>>f.close()

    3. 文件的读操作

    open()函数返回一个file objec,这里介绍的操作就是文件对象相关的操作

    <1>file.next() 

          返回file指针位置到最近的一个换行符‘ ’之间的字符(包含file所指的字符以及换行字符)。file所指的位置,没有限制必须为某一行的开始位置。

    <2>file.read([size])

          最多读取从file所指位置开始的size个字节,意思就是说,如果没有读取够size个字节的数据的的情况下,已经碰到文件结束符EOF了,那么会结束

          读取,返回当前所读取到的内容。

          *这里有一个小问题,就是用next()方法后,如果使用read(size)会弹错,目前还不知道什么原因。

    <3>file.readline([size])

          size参数缺省的情况下,返回一整行的数据;

          size参数给出的情况下,返回file所在行内,从file开始至多size个字节的数据,即实际返回数据大小 = min{该行file之后的数据大小,size}

    <4>file.readlines([size])

          size缺省的情况下,读取文件的所有行,并且存放于一个列表对象中。

    4. 文件写操作

    在进行文件写操作前,请确保文件打开方式,是以可写的方式打开的。

    <1>file.write(str)

          将目标字符串str写入到文件中,需要时注意的是:由于缓存机制,在文件关闭前,str内容未必真的写入到了文件中. 所以,切记文件的close()操作。

    <2>file.writelines(sequence)

          将可迭代对象sequence中的内容,依次写入到文件中。经常和readlines()配合使用。

    5. 文件指针

    <1>file.tell()   返回文件指针的当前位置

    <2>file.seek(offset[,whence])    offset:偏移量; whence:相对位置

    whence offset
    0 (文件的开头) >=0 的整数,如果是负数会报错                                               
    1(文件指针当前位置) 如果越界,会报错
    2(文件末尾)

    一般用负数(使用正数竟然不会报错,不知道为什么)

                           

    mode参数,缺省情况下是"只读"方式

  • 相关阅读:
    linux 命令——48 watch (转)
    linux 命令——47 iostat (转)
    linux 命令——46 vmstat(转)
    linux 命令——45 free(转)
    linux 命令——44 top (转)
    linux 命令——43 killall(转)
    linux 命令——42 kill (转)
    linux 命令——41 ps(转)
    linux 命令——40 wc (转)
    Java for LeetCode 068 Text Justification
  • 原文地址:https://www.cnblogs.com/zyq-blog/p/5585418.html
Copyright © 2011-2022 走看看