Pytho open() 函数

返回上一级

python 内置的 open() 函数用于打开一个文件,创建一个 file 对象

更多文件 I/O 的方法可以访问我们的 Python 文件 I/O

语法

open(name[, mode[, buffering]])

参数

参数 说明
name 一个包含了你要访问的文件名称的字符串值
mode mode 决定了打开文件的模式:只读,写入,追加等
所有可取值见如下的完全列表
这个参数是非强制的,默认文件访问模式为只读 (r)
buffering 如果 buffering 的值被设为 0,就不会有缓冲
如果 buffering 的值取 1,访问文件时会缓冲
如果将 buffering 的值设为大于 1 的整数,就是缓冲区的大小
如果取负值,缓冲区的大小则为系统默认

文件打开模式

下表列出了打开文件的不同模式 ( mode 参数 )

模式 描述
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式
r+ 打开一个文件用于读写。文件指针将会放在文件的开头
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头
w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件
w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写

file 对象方法

方法 说明
file.read([size]) size 未指定则返回整个文件
如果 size > 2 倍内存则有问题
f.read()读到文件尾时返回""(空字串)
file.readline() 返回一行
file.readline([size]) 返回包含 size 行的列表,size 未指定则返回全部行
for line in f: print line 通过迭代器访问
f.write("hello\n") 如果要写入字符串以外的数据,先将它转换为字符串
f.tell() 返回一个整数,表示当前文件指针的位置
f.seek(offset,[start]) 用来移动文件指针
offset:单位:比特,可正可负
start: 0-文件头,默认值; 1 -当前位置; 2- 文件尾
f.close() 关闭文件

范例

假设当前脚本目录下存在文件 site.txt,内容如下

简单教程
简单编程

那么运行下面的代码将输出

>>>f = open('site.txt')
>>> print f.read()
简单教程
简单编程
>>> f.seek(0)
>>> f.read()
'\xe7\xae\x80\xe5\x8d\x95\xe6\x95\x99\xe7\xa8\x8b\n\xe7\xae\x80\xe5\x8d\x95\xe7\xbc\x96\xe7\xa8\x8b\n'

返回上一级

Python2 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.