gpt4 book ai didi

python 使用 __getitem__ 作为方法

转载 作者:太空宇宙 更新时间:2023-11-03 15:28:26 24 4
gpt4 key购买 nike

是否可以在方法中使用getitem,即

Class MyClass:
@property
def function(self):
def __getitem__():
...

我能做到

A = MyClass()
A.function[5]
A.function[-1]

最佳答案

在 python 中,一切都是一流的对象,所以这个想法应该可行(语法已关闭),但我建议将 function 创建为自己的类,其中包含属性,然后利用它在 MyClass 中,除非你有很好的数据隐藏理由不这样做......

我想指出,我假设您想让 function 返回一个可订阅的东西,而不是一个可订阅的函数列表。这是不同的实现方式(不过也可以这样做。)

例如,一个可订阅的东西(你也可以只制作一个list):

# python

> class FooFunc(list):
> pass
> class Foo:
> foofunc = FooFunc()
> f = Foo()
> f.foofunc.append("bar")
> f.foofunc[0]
'bar'

关于python 使用 __getitem__ 作为方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3268408/

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