美文网首页Python
Python基础(35) - With语句的作用

Python基础(35) - With语句的作用

作者: xianling_he | 来源:发表于2020-03-08 17:20 被阅读0次

读取文件的几个方法

  • 直接使用open函数
  • 使用close函数关闭文件
f = open('C:\\PyTest\\Selenium_OpenSchools\\test_selenium\\综合学习\\files\\temp.txt','r')
print(f.read())
f.close()
  • 使用try except方法
f = open('C:\\PyTest\\Selenium_OpenSchools\\test_selenium\\综合学习\\files\\temp.txt','r')
#print(f.read())

try:
    data = f.read()
    print(data)
except:
    print('print error')
finally:
    f.close()
hexianling.png

问题总结:

  • 以上方法每次读完文件以后都需要添加f.close() 来关闭文件
  • 下面介绍如何使用with

with的使用

  • 只用with以后就不需要使用f.close
with open('C:\\PyTest\\Selenium_OpenSchools\\test_selenium\\综合学习\\files\\temp.txt','r') as f:
    data = f.read()
    print(data)

将with语句用于自定义的类

  • enter , exit 只会被调用一次
class Mycall:
    def __enter__(self):
        print('__enter__() is call')
        return self
    def process1(self):
        print('process1')
    def process2(self):
        print('process2')
    def __exit__(self, exc_type, exc_val, exc_tb):
        print('__exit__() is  call')
        print(f'type:{exc_type}')
        print(f'value: {exc_val}')
        print(f'trace: {exc_tb}')


with Mycall() as my:
    my.process1()
    my.process2()
hexianling.png

总结

  1. with语句可以确保不管是否抛出异常,都会释放资源
    2.如果with语句用于自定义类中,需要实现enter,exit方法,否则会抛出异常

加油 2020-3-8

相关文章

  • Python基础(35) - With语句的作用

    读取文件的几个方法 直接使用open函数 使用close函数关闭文件 使用try except方法 问题总结: 以...

  • Python最佳学习路线图:从基础到高级

    python语言基础 (1)Python3入门,数据类型,字符串 (2)判断/循环语句,函数,命名空间,作用域 (...

  • Python学习路线图

    1、python语言基础 (1)Python3入门,数据类型,字符串 (2)判断/循环语句,函数,命名空间,作用域...

  • 新手应该如何学习python

    1、python语言基础 Python3入门,数据类型,字符串 判断/循环语句,函数,命名空间,作用域 类与对象,...

  • Python学习路线

    Python语言基础 Python3入门,数据类型,字符串 判断/循环语句,函数,命名空间,作用域 类与对象,继承...

  • 2.0 Python - 子目录

    0.0 总目录 2.0.1什么是Python 2.2Python基础 2.2.1基础语句 2.2.2Python的...

  • Python基础知识

    Python基础 语句和语法 Python语句中有一些基本规则和特殊字符: 井号(#)表示之后的Python字符为...

  • 2020-09-22python语言基础和变量

    day1-python语言基础和变量 python基础语法 语句(一条有效的程序)一条语句占一行,一行结束后不用写...

  • 廖雪峰Python教程读书笔记(一)

    Python基础#### Python语法简单,采用缩进,当语句以冒号结尾时,缩进的语句是为代码块,约定使用4个空...

  • Python入门小程序(一)

    学习了FishC的Python零基础入门第4节,本次的内容是Python的while循环语句和条件语句。 1. 用...

网友评论

    本文标题:Python基础(35) - With语句的作用

    本文链接:https://www.haomeiwen.com/subject/anfjdhtx.html