云主机测评网云主机测评网云主机测评网

云主机测评网
www.yunzhuji.net

如何用python实现滑动窗口

在Python中,我们可以使用内置的collections模块中的deque数据结构来实现滑动窗口,以下是一个简单的例子:

(图片来源网络,侵删)
from collections import deque
def sliding_window(iterable, n):
    # 创建一个双端队列
    dq = deque(maxlen=n)
    for item in iterable:
        dq.append(item)
        if len(dq) == n:
            yield list(dq)
测试代码
for window in sliding_window([1, 2, 3, 4, 5], 3):
    print(window)

在这个例子中,我们首先从collections模块导入deque类,我们定义了一个名为sliding_window的函数,它接受一个可迭代对象和一个窗口大小作为参数。

在函数内部,我们创建了一个最大长度为n的双端队列dq,我们遍历输入的可迭代对象,将每个元素添加到队列的末尾,当队列的长度达到n时,我们就生成一个新的列表,其中包含队列中的所有元素。

我们使用一个简单的循环来测试我们的函数,我们将一个包含五个元素的列表和窗口大小3传递给sliding_window函数,然后打印出所有的滑动窗口。

打赏
版权声明:主机测评不销售、不代购、不提供任何支持,仅分享信息/测评(有时效性),自行辨别,请遵纪守法文明上网。
文章名称:《如何用python实现滑动窗口》
文章链接:https://www.yunzhuji.net/jishujiaocheng/39179.html

评论

  • 验证码