python错误和异常处理_python异常处理

python错误和异常处理_python异常处理抛出异常Python使用raise语句抛出一个指定的异常。raise语法格式如下:raise[Exception[,args[,traceback]]]defdivision():”’功能:分苹果”’print(“\n=====================分苹果了=====================\n”)apple=int(input(“请输入苹果的个数:”))#.

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

Jetbrains全系列IDE稳定放心使用

抛出异常

Python 使用 raise 语句抛出一个指定的异常。

raise语法格式如下:

raise [Exception [, args [, traceback]]]

python错误和异常处理_python异常处理

 

def division():
    '''功能:分苹果'''
    print("\n===================== 分苹果了 =====================\n")
    apple = int(input("请输入苹果的个数:"))                     # 输入苹果的个数
    children = int(input("请输入来了几个小朋友:"))
    if apple < children:
        raise ValueError("苹果太少了,不够分...")
    result = apple // children                                   # 计算每人分几个苹果
    remain = apple - result * children                          # 计算余下几个苹果
    if remain > 0:
        print(apple, "个苹果,平均分给", children, "个小朋友,每人分", result,
              "个,剩下", remain, "个。")
    else:
        print(apple, "个苹果,平均分给", children, "个小朋友,每人分", result, "个。")
if __name__ == '__main__':
    try:                                                           # 捕获异常
        division()                                                 # 调用分苹果的函数
    except ZeroDivisionError:                                    # 处理异常
        print("\n出错了 ~_~ ——苹果不能被0个小朋友分!")
    except ValueError as e:
        print("\n出错了 ~_~ ——",e)

 运行结果为:

python错误和异常处理_python异常处理

raise 唯一的一个参数指定了要被抛出的异常。它必须是一个异常的实例或者是异常的类(也就是 Exception 的子类)。

如果你只想知道这是否抛出了一个异常,并不想去处理它,那么一个简单的 raise 语句就可以再次把它抛出。

try:
    raise NameError('HiThere')
except NameError:
    print('An exception flew by!')
    raise

 python错误和异常处理_python异常处理

 

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

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

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


相关推荐

  • C语言switch语句的用法详解_c语言switch语句例题

    C语言switch语句的用法详解_c语言switch语句例题C语言虽然没有限制ifelse能够处理的分支数量,但当分支过多时,用ifelse处理会不太方便,而且容易出现ifelse配对出错的情况。例如,输入一个整数,输出该整数对应的星期几的英文表示:#includeintmain(){inta;printf(“Inputintegernumber:”);scanf(“%d”,&a);if(a==1){printf(“Mo…

    2022年8月30日
    3
  • mbus总线电路_LLC电路

    mbus总线电路_LLC电路发送电路:   如上图示,图一为带扩流电路的MBUS发送电路,图二为去掉扩流电路的MBUS发送电路事实证明,当为图一电路时在大负载情况下数据发送接收,都不正确,特别是接收数据错误。当有扩流电路时由于扩流电路起作用,电阻R208即使在MBUS大负载电流的情况下也不热当去掉扩流电路在MBUS大负载电流的情况下,电阻R208很

    2022年10月15日
    5
  • 上海汉特:金税接口软件的产生背景及功能[通俗易懂]

    上海汉特:金税接口软件的产生背景及功能[通俗易懂]随着互联网的快速发展,在会计电算化及企业信息化的催化之下,国内企业会计人员的工作效率也发生了翻天覆地的变化,早已进入了省时、高效、安全、统一的无缝状态。国内经济结构转型,企业经营效率优先,以及高度竞争造成的高度个性化与迅速改变的客户需求,令企业与顾客、企业与供方的关系变得更加密切和复杂。强化管理,规范业务流程,提高准确度,加快产品销售数据流转,以及为流通领域信息管…

    2022年5月20日
    42
  • pycharm2021.5.2激活码[在线序列号]

    pycharm2021.5.2激活码[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    79
  • linux文件复制和移动[通俗易懂]

    linux文件复制和移动[通俗易懂]linux文件复制和移动    文件复制cp(copy)    命令格式:cpsrcdest    cpfile1file2file3(多文件时,最后面是dest,其他都是src)    允许出现的情况是:        1.复制一个文件到一个文件        2.复制多个文件到一个目录    案例:    a.将文件复制到文件夹下,保

    2022年9月28日
    4
  • 2020最新-精选基础算法100题(面试必备)[通俗易懂]

    2020最新-精选基础算法100题(面试必备)[通俗易懂]0x01.概述作为一个程序员,算法能力必不可少,虽然不一定是算法工程师,但是算法还是彰显着个人的编码能力,面试中也经常会被问到,甚至会被要求临场做算法题,所以,还是好好积累吧。个人其实对算法挺有兴趣的,从3月份开始,陆陆续续刷了一些算法题,把一些有意义的记录下来了,也顺便写了一些题解,个人认为,还是挺有收获的。之前写了一篇算法文章的目录,不过后来就忘了实时去更新了,于是现在,想把之前做过的一些有意义的算法题分享出来,刚好整理了100篇比较有意义的。希望对大家有所帮助。0x02.说明关

    2022年6月7日
    53

发表回复

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

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