guess.py 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. """
  2. 面向对象版本的猜数字游戏
  3. Version: 0.1
  4. Author: 骆昊
  5. Date: 2018-03-08
  6. """
  7. from random import randint
  8. class GuessMachine(object):
  9. def __init__(self):
  10. self._answer = None
  11. self._counter = None
  12. self._hint = None
  13. def reset(self):
  14. self._answer = randint(1, 100)
  15. self._counter = 0
  16. self._hint = None
  17. def guess(self, your_answer):
  18. self._counter += 1
  19. if your_answer > self._answer:
  20. self._hint = '小一点'
  21. elif your_answer < self._answer:
  22. self._hint = '大一点'
  23. else:
  24. self._hint = '恭喜你猜对了'
  25. return True
  26. return False
  27. @property
  28. def counter(self):
  29. return self._counter
  30. @property
  31. def hint(self):
  32. return self._hint
  33. if __name__ == '__main__':
  34. gm = GuessMachine()
  35. play_again = True
  36. while play_again:
  37. game_over = False
  38. gm.reset()
  39. while not game_over:
  40. your_answer = int(input('请输入: '))
  41. game_over = gm.guess(your_answer)
  42. print(gm.hint)
  43. if gm.counter > 7:
  44. print('智商余额不足!')
  45. play_again = input('再玩一次?(yes|no)') == 'yes'