python中open和with open有什么区别?

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

一、open函数

一般是使用open()和close()组合来打开和关闭文件。

filemame=open('file',mode='r')
forlineinfilename.readlines():
print(line)
filename.close()

1、open()函数是Python内置的用于对文件的读写操作,返回的是文件的流对象。

2、python代码在不同的平台环境中使用的默认编码方式不同,有可能会发生编译出错的问题。

二、with open函数

用于创建一个临时的运行环境,不再需要访问文件后自动将其关闭,运行环境中的代码执行完后自动安全退出环境。

withopen('file',mode='r')asfilename
forlineinfilename.readlines():
print(line)

1、在这个程序中,调用了open(),但没有调用close();

2、通过使用关键字with,可让python去确定:打开文件,并在需要时使用它,python自会在合适的时候自动将其关闭。