具有_index__()方法的Python对象的示例?

具有_index__()方法的Python对象的示例?,python,indexing,int,hex,Python,Indexing,Int,Hex,除了int,还有哪些Python对象具有\uuu index\uu()方法 例如,文档状态为: 如果x不是Python int对象,那么它必须定义\uuuuu索引() 方法返回一个整数 这是用于自学的。大多数情况下,这些类型来自数学库,如或。这些库有自己的整数类型(这是有充分理由的),但由于\uuuu index\uuuu,它们的特殊整数可以用作列表索引或像普通整数一样传递到十六进制 In [9]: import sympy In [10]: x = sympy.Integer(1) In

除了
int
,还有哪些Python对象具有
\uuu index\uu()
方法

例如,文档状态为:

如果
x
不是Python int对象,那么它必须定义
\uuuuu索引()
方法返回一个整数


这是用于自学的。

大多数情况下,这些类型来自数学库,如或。这些库有自己的整数类型(这是有充分理由的),但由于
\uuuu index\uuuu
,它们的特殊整数可以用作列表索引或像普通整数一样传递到
十六进制

In [9]: import sympy

In [10]: x = sympy.Integer(1)

In [11]: x  # It looks like a regular 1, but it's not.
Out[11]: 1

In [12]: x/2  # This object has special behavior that makes sense for SymPy...
Out[12]: 1/2

In [13]: [1, 2, 3][x]  # but you can still use it for things like indexing.
Out[13]: 2

任何可以解释为整数的东西;e、 g.不是浮点数(可以转换为整数,但会丢失信息)
bool
有这个方法,因为它是
int
的子类。其思想是这样的对象可以用作序列的索引。