面试题答案
一键面试优势
- 自动关闭文件:使用传统方式打开文件,若在操作过程中发生异常,可能会导致文件没有正确关闭,从而引发资源泄漏等问题。而
with
语句会在代码块结束时,无论是否发生异常,都自动关闭文件。 - 代码简洁:
with
语句使文件操作代码更简洁,将文件的打开和相关操作放在一个代码块中,逻辑更清晰。
举例
传统方式:
file = open('test.txt', 'w')
try:
file.write('Hello, World!')
except Exception as e:
print(f"发生错误: {e}")
finally:
file.close()
使用with
语句:
with open('test.txt', 'w') as file:
file.write('Hello, World!')
在上述示例中,使用with
语句无需显式调用file.close()
,且代码结构更紧凑,当出现异常时,文件也会正确关闭。