python抛出异常和捕获异常_Python异常

python抛出异常和捕获异常_Python异常抛出异常:classWidget:def__init__(self,size=(40,40)):self._size=sizedefgetSize(self):returnself._sizedefresize(self,width,height):ifwidth<0orheight&lt…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

抛出异常:

class Widget:
    def __init__(self,size=(40,40)):
        self._size=size
    def getSize(self):
        return self._size
    def resize(self,width,height):
        if width<0 or height<0:

#抛出异常
            raise ValueError(“error size”)
        self._size=(width,height)
        #self代表类的实例,self 在定义类的方法时是必须有的,
        #虽然在调用时不必传入相应的参数
    def add(self,a,b):
        c=a+b
        return c
    def is_prime(self,n):
        if n<=1:
            return false
        #python中的for 循环
        for i in range(2,n):
            if n%i==0:
                #True、False与java不同
                return False
            return True
    def dispose(self):
        pass
if __name__==”__main__”:
    a=Widget()
    b=a.add(2,1)
    print(b)
    flag=a.is_prime(3)
    print(flag)

捕获异常:

import unittest
from Widget import Widget

class TestWidget(unittest.TestCase):
    def setUp(self):
        self.widget=Widget()
    def tearDown(self):
        self.widget=None
        print (“测试结束!”)
    def test_add(self):
        wg=self.widget
        a=wg.add(1,2)
        self.assertEqual(a,3)
    def test_add2(self):
        wg=self.widget
        a=wg.add(2.5,1.3)
        self.assertEqual(a,3.8)
    def test_resize(self):
        self.widget.resize(20,30)
        self.assertEqual(self.widget.getSize(),(20,30))
    def test_resize2(self):
        try:
            self.widget.resize(-10,10)

#捕获异常
        except ValueError:
                print(“error size”)
    def test_resize3(self):
        self.widget.resize(0,0)
        self.assertEqual(self.widget.getSize(),(0,0))
if __name__==”__main__”:
    #main方法执行所有的测试用例
    unittest.main()
 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/180990.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Jquery Ajax 跨域调用asmx类型 WebService范例

    Jquery Ajax 跨域调用asmx类型 WebService范例Ajax在Web2.0时代起着非常重要的作用,然而有时因为同源策略(SOP)(俗称:跨域问题(crossdomain))它的作用会受到限制。在本文中,将学习如何克服合作限制。本文以asmx方式搭建webservice作为测试用后端,给出完整的前后端调用解决方案、范例代码。

  • HashMap currentHashMap总结

    HashMap currentHashMap总结HashMap不同点:(1)JDK1.7用的是头插法,而JDK1.8及之后使用的都是尾插法,那么他们为什么要这样做呢?因为JDK1.7是用单链表进行的纵向延伸,当采用头插法时会容易出现逆序且环形链表死循环问题。但是在JDK1.8之后是因为加入了红黑树使用尾插法,能够避免出现逆序且链表死循环的问题。(2)扩容后数据存储位置的计算方式也不一样:1.在JDK1.7的时候是直接用hash值和需要扩…

  • 【Unity3D入门教程】使用C#脚本控制游戏对象

    【Unity3D入门教程】使用C#脚本控制游戏对象使用C#脚本控制游戏对象,是一项必备的基本技能。Unity3D可以使用的脚本有C#和javascript等。我们主要讲注意力集中在C#上。本文将会介绍怎样使用脚本控制场景中的游戏对象。

  • makefile变量赋值

    在定义变量的值时,我们可以使用其它变量来构造变量的值,在Makefile中有两种方式来在用变量定义变量的值。先看第一种方式,也就是简单的使用“=”号,在“=”左侧是变量,右侧是变量的值,右侧变量的值可

    2021年12月25日
  • ThinkPad E431怎样关闭触摸板

    ThinkPad E431怎样关闭触摸板

  • 详细教你如何部署ICE服务(一)

    详细教你如何部署ICE服务(一)这系列文章将会一步步教你如何部署一个ICE服务,如果你正在读这篇博客,我想你已经了解了什么是ICE(InternetCommunicationsEngine),以及如何去实现ICE服务,并且了解什么是ICE对象、ICE对象标识符、ICE对象适配器、ICE服务实现servant、ICE通信器等概念,当然如果你连什么是ICE都不知道,我不建议你继续读下去。先说一下ICE的基本组件:(1)

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号