为什么4/5结果必须减少返回迭代器?

2021-05-16 09:07:24 发布

您现在位置:Python中文网/ 问答频道 /正文

^{}的可选第4和第5个返回值来自docs

  • 可选地,一个迭代器(而不是序列)产生连续的列表项。这些列表项将被pickle,并附加到对象。。。

  • 可选地,一个迭代器(不是序列)产生连续的字典项,它应该是(key, value)形式的元组。这些项将被pickle并使用obj[key] = value存储到对象中。。。

为什么这些值必须是迭代器?奇怪的是,如果我们有一个要附加的东西的列表,我们必须在返回它之前调用iter。为什么pickle协议在这里需要迭代器,为什么它不能为我们调用iter?你知道吗