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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微信小程序上传图片和文件

    微信小程序上传图片和文件要有遥不可及的梦想,也要有脚踏实地的本事。———–Grapefruit.BanuitGang(香柚帮)今天讲解一下微信小程序上传图片或者上传文件的步骤:首先第一步我们要先在wxml页面文件中写入一个图标或者按钮,用来触发微信调起手机相册和拍照功能,供你选择图片<imagesrc=”/static/images/addimg.png”bindtap=”chooseImage”></image>然后给这个图标或者按钮写上点击事件chooseImag

    2022年6月29日
    32
  • 英:英语面试常用口语900句[通俗易懂]

    英语面试常用口语900句英语面试常用口语900句2018年09月18日12:13:11Nathan_Sun阅读数:9514(一)高频词汇:可以拿来形容自己的形容词。除开我们都熟知的一些基本的词汇可以用来形容自己,比如honest,reliable,trustworthy等,我们还可以运用一些“高级词汇”。用形容词的形式来形容自己1.com…

    2022年4月9日
    445
  • 后台管理系统界面_用户界面管理系统

    后台管理系统界面_用户界面管理系统后台界面也可以很酷!31个高大上的后台管理系统模版1.inspiniaDemo2.ThinAdminTemplateDemo&Download3.FreshUI–PremiumWebAppandAdminTemplateDemo&Download4.Clip-One–Bootstrap3Respo…

    2022年9月12日
    0
  • 八数码问题及A*算法

    八数码问题及A*算法一.八数码问题八数码问题也称为九宫问题。在3×3的棋盘,摆有八个棋子,每个棋子上标有1至8的某一数字,不同棋子上标的数字不相同。棋盘上还有一个空格,与空格相邻的棋子可以移到空格中。要求解决的

    2022年7月4日
    18
  • ETL 开发相关

    ETL 开发相关ETL开发相关

    2022年6月10日
    30
  • maxcompute 2.0复杂数据类型之struct[通俗易懂]

    maxcompute 2.0复杂数据类型之struct[通俗易懂]maxcompute 2.0复杂数据类型之struct

    2022年4月21日
    45

发表回复

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

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