gpt4 book ai didi

python - 对一个类进行多重索引?

转载 作者:行者123 更新时间:2023-12-01 00:46:34 25 4
gpt4 key购买 nike

我有以下代码:

class C:
def __getitem__(self,a,b):
return 1

c = C()
c[2,3]

TypeError: Missing 1 required positional argument : b

我的问题是在索引 c 时如何提供第二个参数?

最佳答案

没有办法直接在__getitem__中处理这个问题 (docs) ;您必须让 c[x] 返回某种子对象,您可以使用第二个 inxed [y] 来获取单个项目。您可能想要的是让 __getitem__ 接受具有此类坐标的元组:

def __getitem__(self, tuple):
y, x = tuple
return self.matrix[y][x]

然后执行:

c[x, y]

关于python - 对一个类进行多重索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56936810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com