Python open()与with open(),read(), readline() 和 readlines()
1.open()
注意 open() 之后 一定要 close()
file = open("test.txt","r")
for line in file.readlines():
print(line)
file.close()
但由于文件读写时都可能产生IOError,close命令无法执行,文件无法关闭。可以使用 try ... finally 来实现:
try:
file= open("test.txt","r")
print(file.read())
except:
print("error")
finally:
file.close()
2. with open() (with:文件使用后自动关闭)
with open("test.txt","r") as file:
for line in file.readlines():
print(line)
with语句是一个非常通用的结构,允许你使用所谓的上下文管理器。上下文管理器是支持两个方法的对象:_enter_和 exit。
方法_enter_不接受任何参数,在进入with语句时被调用,其返回值被赋给关键字as后面的变量。
方法_exit_接受三个参数:异常类型、异常对象和异常跟踪。它在离开方法时被调用(通过前述参数将引发的异常提供给它)。
如果_exit_返回False,将抑制所有的异常。
3. read(),readline(),readlines()
read() 一次性读取文本中全部的内容,以字符串的形式返回结果
readline() 只读取文本第一行的内容,以字符串的形式返回结果
readlines() 读取文本所有内容,并且以数列的格式返回结果,一般配合for in使用