猜年龄,有三次机会,如何做?
1. 检查 输入的数据是否合法,通过异常try来处理,并记录 输入错误次数
2. 通过累加器,判断是否猜了3次,并提示还剩余多少的机会
3. 当3次错误,跳出
#!/usr/bin/python3
def guess_age(name, real_age):
‘‘‘猜年龄,有三次机会‘‘‘
count = 0
print(‘%s来猜猜我的年龄来‘ % name)
while True:
error_number = 0
while True: # 验证是否输入合法
try:
maybe_age = int(input("%s:" % name))
except:
error_number += 1
print(‘调皮,不想玩了,已经答非所问 %s 次了‘ % error_number)
else:
break
count += 1
if maybe_age == real_age:
if count == 1:
print(‘%s真的太棒了,居然马上就猜中了‘ % name)
else:
print(‘%s真的太ben了,居然猜了这么多次才猜中,你居然猜了 %s 次‘ % (name, count))
break
elif maybe_age > real_age:
print(‘我有那么老么?滚滚滚,再给你%d机会‘%(3-count))
elif count == 3:
print(‘不和你玩了,真的ben!!!!!!!‘)
break
elif maybe_age < real_age:
print(‘嗯哼,把我年龄说的那么低,暗示我智商低?哼,还给你%d机会‘ % (3-count))
if __name__ == ‘__main__‘:
guess_age(name=‘北门吹雪‘, real_age=18)
原文:http://www.cnblogs.com/2bjiujiu/p/7190306.html