gpt4 book ai didi

python - 将自定义类转换为标准 Python 类型

转载 作者:行者123 更新时间:2023-11-28 22:42:31 25 4
gpt4 key购买 nike

我正在使用一个名为 predictionsnumpy 数组。我正在玩以下代码:

print type(predictions)
print list(predictions)

输出是:

<type 'numpy.ndarray'>`
[u'yes', u'no', u'yes', u'yes', u'yes']

我想知道 numpy 如何构建他们的 ndarray 类,以便它可以转换为列表而不是他们自己的 list 函数,但具有标准的 Python 函数。

Python 版本:2.7,Numpy 版本:1.9.2

最佳答案

I have answered from the pure Python perspective below, but numpy's arrays are actually implemented in C - see e.g. the array_iter function.

documentationlist 的参数定义为 iterablenew_list = list(something) 有点像:

new_list = []
for element in something:
new_list.append(element)

(或者,在列表理解中:new_list = [element for element in something])。因此,要为自定义类实现此行为,您需要定义 __iter__ magic method :

>>> class Demo(object):
def __iter__(self):
return iter((1, 2, 3))


>>> list(Demo())
[1, 2, 3]

请注意,转换为其他类型需要 different methods .

关于python - 将自定义类转换为标准 Python 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31593157/

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