如何将数组引用转换为numpy数组python?

时间:2018-03-27 10:51:53

标签: python arrays numpy

我有一个类Boundary,其属性points是一个numpy数组。

class Boundary():
   self.points = np.array([])
   ...

班级Splineboundary的子班级。

但是当我打电话给spline.points时,我无法获得一个numpy数组。 打印时,我看到它是一个对象,那么如何将点转换为数组呢?

1 个答案:

答案 0 :(得分:0)

您的代码设置属性self.points,而不是将points指定为属性。 请参阅以下示例

class Boundary():
    def __init__(self):
        self.points = np.arange(3)

a = Boundary()
print(a.points)
print(type(a))
print(type(a.points))

输出

[0 1 2]
<class '__main__.Boundary'>
<class 'numpy.ndarray'>

修改

使用childs的以下代码:

import numpy as np


class Boundary():
    def __init__(self):
        self.points = np.array([])

    def setPoints(self, points):
        self.points = points


class Spline(Boundary):
    def __init__(self):
        super().__init__()


points = np.arange(5)
spline = Spline()
spline.setPoints(points)
print(spline.points)

对应输出:

[0 1 2 3 4]