如果输入关键字不存在,如何让它返回循环重新输出?continue应该怎么加?
来源:4-3 实操实现:号码百事通功能
慕的地8004648
2019-11-12 19:53:43

1回答
同学,你好。同学可以参考下述代码及代码中的注释实现循环输入的功能
phone_numbers_str = "匪警[110],火警[119],急救中心[120]," \
"道路交通事故报警[122],水上求救专用电话[12395]," \
"天气预报[12121],报时服务[12117],森林火警[12119]," \
"电力服务[95598],红十字会急救台[999],公安短信报警[12110]," \
"通用紧急求救[112],信产部IP/网站备案[010-66411166]"
# 号码百事通功能
def find_phone(keyword):
phone_list = phone_numbers_str.split(",")
# 判断keyword 是否在phone_numbers_str字符串中,不在则返回1
if keyword not in phone_numbers_str:
return 1
for p in phone_list:
if p.find(keyword) != -1:
print(p)
while True:
print("1-双色球随机选号")
print("2-号码百事通")
print("3-明日天气预报")
print("0-结束程序")
c = input("请输入功能编号:")
if c == "2":
# 设置while循环,实现重新输入功能
while True:
n = input("请输入您要查询的机构或者电话号码:")
# 当调用find_phone(n)函数返回结果为1时, 即电话号码不存在,
# 使用continue执行下一次循环重新输入
# 若条件不成立,即输入的电话号码存在,则使用brak结束循环
if find_phone(n) == 1:
print('您输入的电话号码不存在,请重新输入')
continue
else:
break
elif c == "0":
break
else:
print("您输入的功能编号有误,请重新输入")
print("============================")
print("感谢您的使用,祝您生活愉快,再见!")如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
相似问题