-2

我需要这个来询问年龄,但如果年龄低于 11 岁或超过 100 岁,则拒绝它并拒绝除整数以外的任何内容。如果输入的数字超出给定范围或不是整数,我需要它循环返回并再次询问

def PlayerAgeFunction():
   VALID = True
   while VALID == True:
      PlayerAge = int(raw_input('ENTER YOUR AGE: '))
      if PlayerAge == type(int):
          VALID = False
     elif PlayerAge != type(int):
         print 'THAT IS NOT A NUMBER.'
   return PlayerAge

我之前在这里寻找答案,但我发现没有帮助。请有人帮忙,谢谢。

4

1 回答 1

2
def prompt_age(min=11, max=100):
    while True:
        try:
            age = int(raw_input('ENTER YOUR AGE: '))
        except ValueError:
            print 'Please enter a valid number'
            continue
        if not min <= age <= max:
            print 'You are too young/old'
            continue
        return age
于 2012-12-23T15:21:45.650 回答