您现在所在的位置:首页 >学习资源 > Python全栈+人工智能入门教材 > Python基础入门教程56:Python open() 函数

Python基础入门教程56:Python open() 函数

来源:奇酷教育 发表于:

Python教程 Python基础 Python视频

  Python 内置函数

  python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。

  更多文件操作可参考:Python 文件I/O。

  函数语法

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

  参数说明:

  name : 一个包含了你要访问的文件名称的字符串值。

  mode : mode 决定了打开文件的模式:只读,写入,追加等。所有可取值见如下的完全列表。这个参数是非强制的,默认文件访问模式为只读(r)。

  buffering : 如果 buffering 的值被设为 0,就不会有寄存。如果 buffering 的值取 1,访问文件时会寄存行。如果将 buffering 的值设为大于 1 的整数,表明了这就是的寄存区的缓冲大小。如果取负值,寄存区的缓冲大小则为系统默认。

  不同模式打开文件的完全列表:

  模式描述

  r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。

  rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。

  r+打开一个文件用于读写。文件指针将会放在文件的开头。

  rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。

  w打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  wb以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  w+打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  wb+以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

  a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

  ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

  a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。

  ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

  file 对象方法

  file.read([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(偏移量,[起始位置]) 用来移动文件指针.

  偏移量:单位:比特,可正可负

  起始位置:0-文件头,默认值;1-当前位置;2-文件尾

  f.close() 关闭文件

  实例

  测试文件 test.txt,内容如下:

  RUNOOB1

  RUNOOB2

  >>>f = open('test.txt') >>> f.read() 'RUNOOB1\nRUNOOB2\n'