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

    1. open()函数用法:

    file-object = openfile_name, access_mode = ' ', buffering = -1

    filename可以是相对路径或绝对路径,access_mode可以为r, w, a分别代表读,写,追加,U则表示通用换行符支持。rU模式下,打开的文件必须存在,w模式下打开的文件若存在则首先被清空,然后重新写入。a则是追加到文件尾部。如果文件不存在,则自动创建。

    buffering表示缓冲方法,0为不缓冲,1为缓冲一行,大于1则表示缓冲特定大小,不给定或-1时,则表示采用默认缓冲机制。

    1. 文件内建方法
      1. readN):直接读取N个字节到字符串中
      2. readline():读取文件的一行,包括行结束符然后作为字符串返回。
      3. readlines():读取所有(剩余的)行然后把它们作为一个字符串列表返回。
      4. xreadlines()不是一次性读取所有行,而是每次读取一块,用在for循环中可以减少对内存的占用。使用迭代器也一样可以实现。
      5. write():功能和read()相反。
      6. writelines():针对列表,他接受一个字符串列表作为参数,将他们写入文件。行结束符不会被自动写入。
    2. seek()和tell()

    seek(offset)方法可以在文件中移动文件指针到不同的位置,offset字节代表相对某个位置的偏移量,默认为01表示从当前位置算起,2表示从文件末尾算起。tell()则可以显示指针在文件中的位置。

    1. 标准文件

    sys模块通过sys.argv属性提供了对命令行参数的访问,sys.argv[0]永远是程序的名称,len(sys.argv)是命令行参数的个数。

    文件对象方法

    操作

    file.close( )

    关闭文件

    file.fileno( )

    返回文件操作符(FD整型)

    file.flush( )

    刷新文件内部缓冲区

    file.isatty( )

    判断file是否问一个类tty设备

    file.next( )

    返回文件下一行(类readline

    file.read(size = -1)

    从文件读取size个字节,当未给定size或为负时,读取剩余所有字节,然后作为字符串返回

     

    1. 从文件读取的数据回到脚本时是一个字符串,当把数据写入文件时,python不会自动将对象转换为字符串,你必须传递一个已经格式化的字符串。
    2. 正常python打开文件都是使用open函数,但是当中途出现异常时,文件时无法正常关闭的,可能引发不可知的错误,同时可避免忘记结尾close的情况。

    因此推荐使用with函数来打开文件

    >>> with open('workfile', 'r') as f:
    ...     read_data = f.read()
    >>> f.closed
    True

    使用迭代器打开文件,十分快速和节省内存。

     f = open(filename , 'r')

    for eachline in f:

    print eachline

    f.close()

  • 相关阅读:
    Java中常见的异常
    WebView中Js与Android本地函数的相互调用
    Gson解析POJO类中的泛型参数
    JAVA反射技术的使用
    Couchbase 找回登录密码
    微信内网页支付开发手记
    Android实现自定义字体
    Android实现图片裁切
    Android实现ExpandableTextView可扩展TextView
    仿美团实现地域选择(二)
  • 原文地址:https://www.cnblogs.com/hbgzy/p/5227955.html
Copyright © 2011-2022 走看看