|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
首先对点进来的鱼友们表示万分感谢,废话不多说我就直接进入主题吧。
此代码执行的业务是模拟医院挂号就诊的问题,分为三步:
第一步:病人到达后提交病历号,利用列表的形式将号码存储进去。
第二步:护士开始叫患者就诊,采用队列的形式弹出,也就是“先进先出”。被弹出的数据在列表内消失。
第三步:下班时间到,不再接受病人挂号,将列表里的数据依次弹出,并清空列表。
问题出在第二步,当列表里的数据没有时,它并没有打印出“无病人挂号”这句话并且返回上一层,而是直接出现报错。
报错详情如图所示;附上代码
- list = []
- flag = 1
- while(flag == 1):
- _com = input("请输入命令:")
- com =_com
- if com == 'a':
- _num = input("病历号:")
- num = int(_num)
- list.append(num)
- continue
-
- #问题出现
- elif com =='n':
- if list != None:
- print("病历号为",list.pop(0),"的病人就诊")
- continue
- else:
- print("无病人挂号就诊!")
- continue
- #问题结束
-
- elif com =='q':
- print("今天停止挂号,下列病人依次就诊:")
- for i in range(len(list)):
- print("病历号为:", list[i], "")
- list.clear()
- flag = 0
- continue
复制代码
空列表并不等于None,它们的类型就不一样,一个是列表类型,一个是None类型
你可以把
换成
|
-
报错
|