5

是否可以在 Python 3 中实现自定义视图对象?

根据文档:

dict.keys()、dict.values() 和 dict.items() 返回的对象是视图对象。它们提供字典条目的动态视图,这意味着当字典更改时,视图会反映这些更改。

那么是否有可能以某种方式创建自定义视图对象?

我搜索了很长时间有关它的任何信息,但我发现的唯一解释是视图是什么,而不是如何创建自定义如何实现它们(它们的内部机制)。

4

1 回答 1

1

在 Python 2 中,这些函数返回一个列表。在 Python 3 中,您可以得到像列表一样的对象。像列表一样行事需要什么?

您可以使用许多“特殊功能”来更改对象的行为。你可能已经很熟悉了__init__()。对于制作“视图”,最重要的可能是__len__()__getitem__()也许__iter__()

于 2013-02-01T18:36:07.887 回答