异常处理练习案例

1、根据索引值查找字符串中的某个字符

strs = 'fmvmza[ji2984qtj[afffqr=aerjewqjgeq525fd-ijgl;ojglejqejfa'
while 1:
    try:
        index = int(input('请输入查找的索引位置:'))
    except ValueError:
        print('请输入int类型的数据!')
        continue
    try:
        str = strs[index]
    except IndexError:
        print('索引值范围:{}-{}'.format(0, len(strs) - 1))
        continue
   print(str) break

结果演示:

请输入查找的索引位置:>? fda
请输入int类型的数据!
请输入查找的索引位置:>? 100
索引值范围:0-56
请输入查找的索引位置:>? 56
a

2、求两个数的商

while True:
    try:
        a = int(input('请输入被除数:'))
    except ValueError:
        print('请重新输入数字类型!')
        continue
    try:
        b = int(input('请输入除数:'))
    except ValueError:
        print('请重新输入数字类型!')
        continue
    try:
        result = a/b
    except ZeroDivisionError:
        print('除数不能为0,请重新输入!')
        continue
   print('%s ÷ %s = %.2f'%(a,b,result)) break

结果演示:

请输入被除数:>? 10
请输入除数:>? d
请重新输入数字类型!
请输入被除数:>? 10
请输入除数:>? 0
除数不能为0,请重新输入!
请输入被除数:>? 10
请输入除数:>? 3
10 ÷ 3 = 3.33

 

posted @ 2021-06-05 22:17  eliwang  阅读(70)  评论(0编辑  收藏  举报