python抛出异常会终止程序吗_catch里面抛出异常

python抛出异常会终止程序吗_catch里面抛出异常Python抛出异常

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

Jetbrains全系列IDE稳定放心使用

Python 抛出异常

抛出异常相当于是停止运行这个函数中的代码,将程序执行转到 except 语句。

如果没有 try 和 except 语句覆盖抛出异常的 raise 语句,该程序就会崩溃,并显示异常的出错信息。通常是调用该函数的代码知道如何处理异常,而不是该函数本身。所以你常常会看到 raise 语句在一个函数中,try 和 except 语句在调用该函数的代码中。

使用 try 和 except 语句,可以更优雅地处理错误,而不是让整个程序崩溃。

#!/usr/bin/env python3
# -*- coding:utf-8 -*-

def boxPrint(symbol, width, height):
    if len(symbol) != 1:
        raise Exception("Symbol must be a single character string.")
    if width <= 2:
        raise Exception("Width must be greater than 2.")
    if height <= 2:
        raise Exception("Height must be greater than 2.")

    print(symbol * width)
    for i in range(height - 2):
        print(symbol + (' ' * (width - 2)) + symbol)
    print(symbol * width)


for sym, w, h in (('*', 4, 4), ('O', 20, 5), ('x', 1, 3), ('ZZ', 3, 3)):
    try:
        boxPrint(sym, w, h)
    except Exception as err:
        print('An exception happened: ' + str(err))

/usr/bin/python3.5 /home/strong/workspace/master.py
****
*  *
*  *
****
OOOOOOOOOOOOOOOOOOOO
O                  O
O                  O
O                  O
OOOOOOOOOOOOOOOOOOOO
An exception happened: Width must be greater than 2.
An exception happened: Symbol must be a single character string.

Process finished with exit code 0

References

https://yongqiang.blog.csdn.net/

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180616.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 一、智能车舵机控制

    一、智能车舵机控制前言:本文章主要是近期有关舵机知识的总结,将分别从舵机的控制原理,控制流程和代码实现流程几个方面作简要介绍,由于时间紧急,难免有疏漏错误之处,欢迎留言指正,QQ:2046890259一、多级的控制原理:我们本次智能车使用的舵机是通过PWM进行控制。而PWM几个重要的参数就是最大值,最小值和占空比。其中占空比决定了舵机的旋转角度,如下图所示:不同的占空比控制不同的角度。而我们的目的就是通过…

    2022年6月20日
    37
  • Mysql 事物语法

    Mysql 事物语法

    2022年3月4日
    38
  • Java.Utils:Date 时间工具类

    Java.Utils:Date 时间工具类packagecom.boob.common.utils;importjava.text.DateFormat;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;/***@description:…

    2022年7月16日
    16
  • ClassCastException。

    ClassCastException。这个错误也很常见,通常在程序中出现强制类型转换时出现这个错误,如下面这段代码所示:publicstaticMapm=newHashMap(){ { put("a","2"); } }; publicstaticvoidmain(String[]args){ IntegerisInt=(Integer)m.get("a"…

    2022年9月8日
    0
  • 第七届蓝桥杯(软件类)C++决赛A组题解

    第七届蓝桥杯(软件类)C++决赛A组题解文章目录题目链接A组真题题目结构第一题随意组合第二题拼棋盘第三题打靶第四题路径之谜第五题碱基第六题圆圈舞(待补)题目链接A组真题题目结构题目类型第一题随意组合结果填空第二题拼棋盘结果填空第三题打靶代码填空第四题路径之谜程序设计第五题碱基程序设计第六题圆圈舞程序设计第一题随意组合问题重现小明被绑架到X星球的巫师W那里。其时,W正在玩弄两组数据(2358)和(1467

    2022年7月24日
    5
  • Mysql清空表数据,id从1开始

    Mysql清空表数据,id从1开始Mysql清空表数据,id从1开始TRUNCATETABLEtable_name

    2022年6月6日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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