open():打开文件

时间:2022-02-23 00:56:43

1.open():使用指定的模式和编码打开文件,返回文件读写对象

2.使用说明:

(1)使用格式:open(filename [, mode [, bufsize]])
(2)打开一个文件,返回一个file对象。 如果文件无法打开,将处罚IOError异常。通常使用open()来代替直接使用file类型的构造函数打开文件。
(3)参数filename表示将要被打开的文件的路径字符串+文件名;
(4)参数mode表示打开的模式,最常用的模式有:'r'表示读文本,'w'表示写文本文件,'a'表示在文件中追加。Mode的默认值是'r'。当操作的是二进制文件时,只要在模式值上添加'b'。这样提高了程序的可移植性。
(5)可选参数bufsize定义了文件缓冲区的大小。0表示不缓冲;1表示行缓冲;任何其他正数表示使用该大小的缓冲区;
负数表示使用系统默认缓冲区大小,对于tty设备它往往是行缓冲,而对于其他文件往往完全缓冲。如果参数值被省却;使用系统默认值。

注意事项:
()使用“w”,文件若存在,首先要清空,然后(重新创建); ()使用“a”,把所有要写入文件的数据都追加到文件的末尾,即使你使用了seek() ,指向文件的其他地方,如果文件不存在,将自动被创建; ()f.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(偏移量,[起始位置])
用来移动文件指针,偏移量:单位:比特,可正可负,起始位置:-文件头,默认值;-当前位置;-文件尾; ()f.close() 关闭文件 ()read( ):表示读取全部内容 ()readline( ):表示逐行读取