python学习笔记(八):异常处理】的更多相关文章

一.异常处理 在程序运行过程中,总会遇到各种各样的错误.程序一出错就停止运行了,那我们不能让程序停止运行吧,这时候就需要捕捉异常了,通过捕捉到的异常,我们再去做对应的处理. 下面我们先写一个函数,实现除法运算. def calc(a,b): return a/b print(calc(5,1))#调用,没有错误,结果是5.0 >>> 5.0 print(calc(5,0))#再次调用,这时候就不对了,因为被除数不能为0,下面报了一堆错,程序停止运行了 >>> ZeroD…
1.概念 Python 使用异常对象来表示异常状态,并在遇到错误时引发异常.异常对象未被捕获时,程序将终止并显示一条错误信息 >>> 1/0 # Traceback (most recent call last): # File "<pyshell#0>", line 1, in <module> # 1/0 # ZeroDivisionError: division by zero 但是,使用异常的目的一般并不是为了单纯的显示错误信息,而是为…
类的高级用法 多态:   在其他语言,使用的是类的继承. 在python中,不需要指定数据类型. 基于TCP协议的socket通信实现: 类似于打电话的情景. 服务端: 1.买手机 2.插卡 3.开机 4.等待电话链接 5.收消息 6.发消息 7.挂电话 8.关手机 具体代码实现如下: import socket #导入一个socket模块 server1=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #买手机,基于socket的网络通信,使用…
Python异常处理 我们一般使用try-except语句来进行异常处理. 使用except Exception as err可以统一捕捉所有异常,而也可以分开处理单个异常. # 分开捕捉单个异常 try: num1 = int(input('Enter the first number:')) num2 - int(input('Enter the sencond number:')) print(num1 / num2) except ValueError: #捕捉数字转化异常 print(…
上次提到正则表达式 当未匹配到数据返回值 None 再使用 match.group 会出现异常 AttributeError 为了避免异常我改成“ match != None” 这次加入异常处理 #!/usr/bin/env python # -*- coding: utf_8 -*- import requests import unittest import re class Testswcw_back(unittest.TestCase): def setUp(self): print "…
处理异常 如果执行到程序中某处抛出了异常,程序就会被终止并退出.你可能会问,那有没有什么办法可以不终止程序,让其照样运行下去呢?答案当然是肯定的,这也就是我们所说的异常处理,通常使用 try 和 except 来解决,比如: try: s = input('please enter two numbers separated by comma: ') num1 = int(s.split(',')[0].strip()) num2 = int(s.split(',')[1].strip()) .…
大型python程序以模块和包的形式组织.python标准库中包含大量的模块.一个python文件就是一个模块.1.标准模块 python自带的,不需要你安装的2.第三方模块 需要安装,别人提供的. pip install xxx 自动化安装的 手动安装 首先下载安装包 解压 在命令行里面进入到这个解压之后的目录 执行python setup.py install3.自己写的 自己写的python文件import xx 导入一个文件 ,导入文件的实质是什么,把这个python运行一次import…
什么是线程(thread)? 线程是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务. import threading,time #定义线程启动后,调用函数 def run(num): print("threading...[%s]" % num) time.sleep() ): #方式一 t = threading.Thread(target=run, a…
一.变量,对象,引用: 1. 变量: 2. 对象:均包含了一个头部信息,有以下两部分内容 a.对象的数据类型, b.引用计数器:纪录当前引用货指向该对象的数量,一旦计数器被清零,该对象的内存空间就会被回收. 3. 引用:关联变量和对象之间的指针, a=3 二.共享引用,新创建对象: 1. a=3 b=a a='spam' a变了,b还等于3,因为b指向的对象没有发生变化,b的指针也没有变. 2.  a=3 b=a a=a+2 b是什么情况? Python里给一个变量赋新值,并不会改变原有的对象,…
1 新式类和旧式类 python类的工作方式在不断变化.较新的Python2版本有两种类,其中旧式类正快速退出舞台.新式类时Python2.2 引入的,提供了一些额外功能,如支持函数super 和 property,而旧式类不支持.要创建新式类,必须直接或间接的继承Object 或设置 __metaclass__. 2 特殊方法(魔法方法) Python中有很多特殊方法,其名称以两个下划线开头和结尾.这些方法的功能各不相同,但大都由python 自动调用. 3 构造函数 在很多面向对象语言中都有…