从 pop() 方法返回更新的堆栈以及顶部元素的原因

问题描述 投票:0回答:1

这个

  def pop(self) -> tuple[Any, Stack]:
    """Pops from the stack, returning an (elem, updated stack) pair."""

pop()
方法返回更新后的堆栈以及顶部元素的原因是什么?

python stack jax
1个回答
0
投票

来自

Stack
类的文档字符串:“有界函数堆栈实现。”

函数式实现通常意味着使用纯函数

pop
函数实现了两个纯函数属性:

  • 使用相同的输入多次调用时,输出不会改变。
  • 该函数不会改变堆栈,即它不会引入副作用。

这就是为什么它必须返回输入的(变异的)副本

Stack
而不是修改它。

© www.soinside.com 2019 - 2024. All rights reserved.