Python returns 实例而不是数组
Python returns instance instead of array
我的程序结构很简单。我有两个 .py
文件,比如 file1.py
和 file2.py
。 file1
是UI,file2
是计算。按下按钮时,file1
将用户输入发送到 file2
并且 file2
进行计算,然后它应该 return 一个数组到 file1
以便file1
可以在UI.
中嵌入的字段中绘制它
当我将 plt.plot(...)
代码放入 file2
和 运行 我的程序时,两个 .py 文件都没有任何问题,window 弹出我的情节在里面。
现在的问题是,当我执行以下操作时,我将尝试为您提供一个示例代码来展示我的方法:
下面是file2中的最后一个方法>
class Calculations:
def calcFunc(self, some arg):
"""do calculations"""
return self.resultingArray
下面的代码在 file1 中,典型的 gui 东西所以我裁掉了一些部分>
import file2
class Application:
def onButtonAction(self, *user info*):
"""do stuff here"""
self.myPlotData = file2.Calculations(*user info*)
print type(self.myPlotData)
当我这样做时,shell 在我的屏幕上打印:
<calcs.Calculations instance at blah>
我检查了 return 的数据类型,因为在我之前尝试绘制该数据时,我收到了一些 matplotlib 错误,所以我用谷歌搜索发现有问题,所以我决定我会检查 returned 的数据类型。所以我只是被困在这里,非常感谢这方面的任何帮助。
注:self.resultingArray
是一个numpy数组,我查过了。当我用 print self.resultingArray
结束那部分代码时,它会打印 type(self.resultingArray)
returns numpy 数组。正如我所说,plt.plot() 也有效,但我需要正确地制作 return 数据,以便我可以将该图放入我的 UI 中。提前致谢。
由于 Calculations
是 class,此行调用隐式构造函数:
self.myPlotData = file2.Calculations(*user info*)
你应该知道构造函数的结果是 class 的一个实例。这正是您获得 type
信息的原因。
如果您确实希望 myPlotData
成为数组,则从 Calculations
实例调用 calcFunc()
。例如:
self.myCalculations = file2.Calculations()
self.myPlotData = self.myCalculations.calcFunc(*user info*)
我的程序结构很简单。我有两个 .py
文件,比如 file1.py
和 file2.py
。 file1
是UI,file2
是计算。按下按钮时,file1
将用户输入发送到 file2
并且 file2
进行计算,然后它应该 return 一个数组到 file1
以便file1
可以在UI.
当我将 plt.plot(...)
代码放入 file2
和 运行 我的程序时,两个 .py 文件都没有任何问题,window 弹出我的情节在里面。
现在的问题是,当我执行以下操作时,我将尝试为您提供一个示例代码来展示我的方法:
下面是file2中的最后一个方法>
class Calculations:
def calcFunc(self, some arg):
"""do calculations"""
return self.resultingArray
下面的代码在 file1 中,典型的 gui 东西所以我裁掉了一些部分>
import file2
class Application:
def onButtonAction(self, *user info*):
"""do stuff here"""
self.myPlotData = file2.Calculations(*user info*)
print type(self.myPlotData)
当我这样做时,shell 在我的屏幕上打印:
<calcs.Calculations instance at blah>
我检查了 return 的数据类型,因为在我之前尝试绘制该数据时,我收到了一些 matplotlib 错误,所以我用谷歌搜索发现有问题,所以我决定我会检查 returned 的数据类型。所以我只是被困在这里,非常感谢这方面的任何帮助。
注:self.resultingArray
是一个numpy数组,我查过了。当我用 print self.resultingArray
结束那部分代码时,它会打印 type(self.resultingArray)
returns numpy 数组。正如我所说,plt.plot() 也有效,但我需要正确地制作 return 数据,以便我可以将该图放入我的 UI 中。提前致谢。
由于 Calculations
是 class,此行调用隐式构造函数:
self.myPlotData = file2.Calculations(*user info*)
你应该知道构造函数的结果是 class 的一个实例。这正是您获得 type
信息的原因。
如果您确实希望 myPlotData
成为数组,则从 Calculations
实例调用 calcFunc()
。例如:
self.myCalculations = file2.Calculations()
self.myPlotData = self.myCalculations.calcFunc(*user info*)