读取文件

进行一次文件的读取,在导入os模块的前提下,主要需要以下代码。

f = open('try.txt', 'r')
print(f.read())
f.close()

这里涉及到一个问题,如果文件‘try.txt’不存在,那么就会报错,无法执行f.close操作,持续占用内存。如何解决这个问题?

异常检查

利用异常处理办法,将关闭文件的指令放到finally语句中,这样无论是否报错,都能实现关闭文件,释放内存。

try:f = open('try.txt', 'r')print(f.read())
finally:if f:f.close()

但这样写代码太过冗长,有没有化简的办法?

with……as……语句

使用with……as……语句,代码化简如下:

with open('try.txt', 'r') as f:print(f.read())

这样写的实际效果和用异常排除写是一样的,即用with……as……代码书写,可以保证无论是否报错,都关闭文件对象,释放内存。

最新文章

  1. dbm,dbi,dbd,db,dbc的区别是什么
  2. 查询无法解析索引的几种情况
  3. 160个Crackme033
  4. .net html转为pdf,.NET使用DinkToPdf将HTML转成PDF的示例代码
  5. 链式调用setTimeout()与setInterval()的区别
  6. 【转】全面理解javascript的arguments,callee,caller,call,apply概念(修改版)
  7. 2017.9.7 翻硬币 失败总结
  8. 建筑系学生怎么系统地学 Photoshop、CAD 之类软件?
  9. 20170826滴滴算法工程师笔试
  10. 数控g71编程实例带图_数控编程代码g71 数控g71编程实例有图
  11. 金融风控建模评分卡系列:机器学习特征选择方法
  12. 米4android6.0 root,小米4怎么root权限获取?miui6获取root权限方法
  13. 纳兰传奇人生里的情深意短
  14. ElasticSeacher 基本查询 方法一
  15. c++课程设计日历记事本
  16. Windows10神州网信政府版的配置修改
  17. Java 面向对象之井字棋
  18. 银行卡信息OCR识别
  19. ICPC-思维-CF#525div2 A+B+C+D
  20. 机顶盒软件组成及启动流程

热门文章

  1. MAC 使用内置Apache 运行PHP
  2. 【论文阅读】基于单幅图像的快速去雾
  3. mac pro 升级ssd_您可以在Mac中升级硬盘驱动器或SSD吗?
  4. win10系统家庭版安装
  5. 十一、Docker 其它命令
  6. 一段计算派(∏)的代码
  7. 千锋教育python2104期总结day15
  8. 新浪微博中链接不能直接打开的最新解决方案
  9. DP31 买卖股票的最好时机(二)、(三)、(四)
  10. 【博应用官网】电脑无法停止通用卷设备该如何解决?