优草派 > Python

Python如何实现历史记录功能?利用Python历史记录实现猜字游戏

翟嘉慧         优草派

很多应用程序都有浏览用户的历史记录的功能,我们可以通过浏览器查看最近访问过的一些网页,我们通过制作了一个简单的猜数字的小游戏,添加历史记录功能,来显示用户最近猜过的数字,实现的步骤是怎么样的呢,跟着我一起看看吧。

Python如何实现历史记录功能?利用Python历史记录实现猜字游戏

我们知道在很多的app中,都存着对历史记录保留的功能,许多网站中可以记录用户最近浏览过的一些网页,视频播放器也可以记录最近看过的视频等等,在Python中也可以实现这样的操作,我们可以使用shell来查看用户之前输入过的内容,使用这个操作,我们可以用Python制作一个猜字的小游戏,主要通过实例来进行讲解。代码如下:

1、双端循环队列

from collections import deque 
H = deque([], 5)
a = [1, 2, 3, 4, 5]
H.extend(a)
print(H)
H.append(6)
print(H)

在这段代码中,我能使用的是标准库中的deque来对一个双端循环队列进行实现,首先对一个队列进行创建,创建时自带容量设置为H,然后再对它进行元素的添加,一次添加了5个元素,再添加第六个元素的时候,会将第一个元素进行删除。

2、保存对象

这一步的操作就是将数据保存在一个对象文件中,同时还可以对文件中的对象进行读取,代码如下:

H = deque([1, 2, 3, 4, 5], maxlen=5)
存储对象到文件
pickle.dump(H, open('history', 'wb'))
读取文件中对象
H1 = pickle.load(open('history', 'rb'))

print(H1)

3、实现猜字游戏

from random import randint
from collections import deque
import pickle
N = randint(0, 50)
print('答案:' + str(N))
初始化队列,容量为5
h1 = deque([], 5)
h1 = pickle.load(open('h1', 'rb'))
print(h1)
def g(k):
    if k == N:
        print('right')
        return True
    if k < N:
        print('%s小于 N' % k)
    else:
        print('%s is 大于 N' % k)
    return False
while True:
    line = input("请输入一个数字:")
    if line.isdigit():
        k = int(line)
     记录用户输入数字
        h1.append(k)
        if g(k):
            break
    elif line == 'h1' or line == 'h?':
查看历史记录
        print(list(h1))
历史记录保存
pickle.dump(h1, open('h1', 'wb'))

通过前面的两个步骤的理解,我们就可以自行的设计一个猜字游戏的操作了,在上面的代码中,我们先导入了需要使用的库,然后在使用ranint函数生成0-50的随机数,让用户去猜,对一个history队列进行初始化的操作,初始化化为5,使用循环语句对文件中的历史记录进行读取,最后记录用户输入的数字,这样用户还可以通过输入命令对历史进行查看,然后将历史记录保存。

到此这篇关于Python如何实现历史记录功能?利用Python历史记录实现猜字游戏功能的文章就介绍到这了,更多相关Python历史记录内容可以继续关注进行学习。

  • 微信好友

  • 朋友圈

  • 新浪微博

  • QQ空间

  • 复制链接

取消
5天短视频训练营
新手入门剪辑课程,零基础也能学
分享变现渠道,助你兼职赚钱
限时特惠:0元
立即抢
新手剪辑课程 (精心挑选,简单易学)
第一课
新手如何学剪辑视频? 开始学习
第二课
短视频剪辑培训班速成是真的吗? 开始学习
第三课
不需要付费的视频剪辑软件有哪些? 开始学习
第四课
手机剪辑app哪个好? 开始学习
第五课
如何做短视频剪辑赚钱? 开始学习
第六课
视频剪辑接单网站APP有哪些? 开始学习
第七课
哪里可以学短视频运营? 开始学习
第八课
做短视频运营需要会什么? 开始学习
【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。

客服热线:0731-85127885

湘ICP备19005950号-1  

工商营业执照信息

违法和不良信息举报

举报电话:0731-85127885 举报邮箱:tousu@csai.cn

优草派  版权所有 © 2024