03 python基本语法-文件操作(三)

本文内容主要包括以下方面:

1. 文件操作基本认识
2. 只读(r, rb)
3. 只写(w, wb)
4. 追加(a, ab)
5. r+读写
6. w+写读
7. a+写读(追加写读)
8. 文件的修改

一.文件操作基本认识

  使用python内置的open( ) 函数打开一个文件,并返回文件对象,然后通过这个对象就可以进行各种操作。在对文件进行处理过程都需要使用到这个函数,如果文件无法被打开,会抛出 OSError。

  打开文件的方式有以下几种:

  • ‘r’:只读。该文件必须已存在,打开不存在文件会报错。
  • ‘r+’可读可写。该文件必须已存在,写为追加在文件内容末尾。
  • ‘rb’:表示以二进制方式读取文件。该文件必须已存在。
  • ‘w’只写。打开即默认创建一个新文件,如果文件已存在,则覆盖写(即文件内原始数据会被新写入的数据清空覆盖)。
  • ‘w+’写读。打开创建新文件并写入数据,如果文件已存在,则覆盖写。
  • ‘wb’:表示以二进制写方式打开,只能写文件, 如果文件不存在,创建该文件;如果文件已存在,则覆盖写。
  • ‘a’追加写。若打开的是已有文件则直接对已有文件操作,若打开文件不存在则创建新文件,只能执行写(追加在后面),不能读。
  • ‘a+’追加读写。打开文件方式与写入方式和'a'一样,但是可以读。需注意的是你若刚用‘a+’打开一个文件,一般不能直接读取,因为此时光标已经是文件末尾,除非你把光标移动到初始位置或任意非末尾的位置。(可使用 seek() 方法解决这个问题)

  文件对象方法:

方法

描述

f.close()

关闭文件,记住用open()打开文件后一定要记得关闭它,否则会占用系统的可打开文件句柄数。

f.fileno()

获得文件描述符,是一个数字

f.flush()

刷新输出缓存

f.isatty()

如果文件是一个交互终端,则返回True,否则返回False。

f.read([count])

读出文件,如果有count,则读出count个字节。

f.readline()

读出一行信息。

f.readlines()

读出所有行,也就是读出整个文件的信息。

f.seek(offset[,where])

把文件指针移动到相对于where的offset位置。where为0表示文件开始处,这是默认值 ;1表示当前位置;2表示文件结尾。

f.tell()

获得文件指针位置。

f.truncate([size])

截取文件,使文件的大小为size。

f.write(string)

把string字符串写入文件。

f.writelines(list)

把list中的字符串一行一行地写入文件,是连续写入文件,没有换行。

注意:

使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。

open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

二.文件操作实例

读文件:

若未注明模式,默认只读模式’r‘打开

猜你喜欢

转载自www.cnblogs.com/cocomoly/p/11691646.html
今日推荐