python 进阶学习(四) 历史记录

      • 使用场景
      • 脚本代码
      • 小结:

以下代码在python3.6 和windows 10 环境下通过验证

使用场景

历史记录的应用场景太常见了, 不多介绍了,下面是脚本代码,可以直接粘贴后运行下

脚本代码

from random import randint
from collections import deque
import pickle

N = randint(1, 100)


def guess(k):
    if k == N:
        print('right')
        return True
    elif k >= N:
        print('大了')
    else:
        print('小了')
    return False


if __name__ == '__main__':
    try:
        history = pickle.load(open('history'))
    except Exception as e:
        print('暂无历史记录...')
        history = deque([], 5)
    while True:
        line = input('please input a number:')
        if line.isdigit():  # 判断录入的内容是否是纯数字
            k = int(line)
            history.append(k)
            if guess(k):
                pickle.dump(history, open('history', 'wb+')) # 在代码退出前保存历史记录
                break
        elif line =='h?' or line == 'history':
            print(list(history))
        else:
            print('muse be a number!')

小结:

  1. 正常跑下来是可以的.
  2. 这个代码有个BUG: 就是历史记录的存储,没有存储成功,重新运行代码都是加载历史记录失败.待解决.

你可能感兴趣的:(python进阶)