Python入门:老男孩python第四天(L04-04-03-python异常处理02)练习题纠正

来源:互联网 发布:新笔下文学软件 编辑:程序博客网 时间:2024/06/06 20:01

原题

原题是想在输入一个数值超出dict的key值范围时,退出内部循环并打印该值不存在。可是真实情况是,当输入的数字超出dict的key值范围之后,还是进入了内部循环,且打印出了超出dict的key值数据

import timedict = {1:1,2:2,3:3,4:4}inputNum = int(input('please input number:'))try:    for i in range(inputNum):        try:            print('Number is %s' % i)            time.sleep(1)        except KeyboardInterrupt:            print('please do not interrupt!')except KeyError:    print('%s is not exist' % inputNum)

纠正后

此题并不难,唯一的解释可能是当时的老师晕了,没有注意到,如果在range里面的inputNum不是dict的key的话,我想问dict与后面的东西有任何关系吗?所以……

import timedict = {1:1,2:2,3:3,4:4}inputNum = int(input('please input number:'))try:    for i in range(dict[inputNum]):        try:            print('Number is %s' % i)            time.sleep(1)        except KeyboardInterrupt:            print('please do not interrupt!')except KeyError:    print('%s is not exist' % inputNum)
0 0
原创粉丝点击