我该如何实际实施;序列协议;用Python语言?

我该如何实际实施;序列协议;用Python语言?,python,python-internals,Python,Python Internals,如果我的python对象返回1 PySequence\u,请检查如何使其返回0?假设我的类实现了getitem 如果我的类实现了getitem,或者很难更改,有没有办法解决这个问题 “”如果对象提供序列协议,则返回1,否则返回0。请注意,对于使用getitem()方法的Python类,它返回1,除非它们是dict子类,因为在一般情况下,无法确定它支持的键的类型。此函数始终“”成功 文档:请出示您的代码。我希望有一个具体的例子。我想实现自定义C代码,为我的特定python类示例类Animal(ob

如果我的python对象返回1 PySequence\u,请检查如何使其返回0?假设我的类实现了getitem

如果我的类实现了getitem,或者很难更改,有没有办法解决这个问题

“”如果对象提供序列协议,则返回1,否则返回0。请注意,对于使用getitem()方法的Python类,它返回1,除非它们是dict子类,因为在一般情况下,无法确定它支持的键的类型。此函数始终“”成功


文档:

请出示您的代码。我希望有一个具体的例子。我想实现自定义C代码,为我的特定python类示例类Animal(object):def _uget_u item(self):return更改此函数。您可以找到python对序列的定义。Python基本上是duck类型,如果某些东西像序列一样工作(意味着实现了这些方法),那么它就是序列。你是用C语言还是用Python编写类?@YiFei:这与PySequence\u Check检查的“序列”概念不同,在不同的上下文中很有用。(对于不编写C扩展的人来说,“序列”的概念通常比PySequence\u检查检查的内容更重要,但我们需要更多的上下文来确定与testgauss321用例相关的内容。)