Python实验报告——第9章 异常处理及程序调试

实验报告

实例01:模拟幼儿园分苹果

代码如下:

def division():
    '''功能:分苹果'''
    print('\n=============== 分苹果了 ===============\n')
    apple = int(input('请输入苹果的个数:'))
    children = int(input('请输入来了几个小朋友:'))
    result = apple//children
    remain = apple-result*children
    if remain>0:
        print(apple,'个苹果,平均分给',children,'个小朋友,每人分',result,'个,剩下',remain,'个。')
    else:
        print(apple,'个苹果,平均分给',children,'个小朋友,每人分',result,'个。')
if __name__ == '__main__':
    division()

 

运行结果:

 

 

 

 

 

实例02:模拟幼儿园分苹果(除数不能为0)

代码如下:

def division():
    '''功能:分苹果'''
    print('\n=============== 分苹果了 ===============\n')
    apple = int(input('请输入苹果的个数:'))
    children = int(input('请输入来了几个小朋友:'))
    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个小朋友分!')

 

运行结果:

 

 

实例03:模拟幼儿园分苹果(每个人至少分到一个苹果)

代码如下:

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)

 

运行结果:

 

 

实例04:模拟幼儿园分苹果(应用断言调试)

代码如下:

def division():
    '''功能:分苹果'''
    print('\n=============== 分苹果了 ===============\n')
    apple = int(input('请输入苹果的个数:'))
    children = int(input('请输入来了几个小朋友:'))
    assert  apple >= children,'苹果不够分'
    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 AssertionError as e:
        print('\n输入有误:',e)

 

运行结果:

 

posted @ 2022-11-03 12:43  xunegu777  阅读(122)  评论(0编辑  收藏  举报