我的程序结构很简单。我有两个.py
个文件,比如file1.py
和file2.py
。 file1
是UI,file2
是计算。按下按钮时,file1
将用户输入发送到file2
,file2
进行计算,然后它应该将数组返回file1
,以便file1
可以在UI中嵌入的字段中绘制它。
当我在plt.plot(...)
中放入file2
代码并以这种方式运行我的程序时,两个.py文件都可以正常工作,窗口弹出我的情节。
现在的问题是当我做下面的事情时,我会尝试给你一个示例代码,展示我的方法:
以下是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>
我检查返回的数据类型,因为在我之前尝试绘制数据的时候,我收到了一些matplotlib错误所以我用Google搜索并看到有些错误所以我决定我检查一下返回的数据。所以我只是被困在这里,非常感谢你们的任何帮助。
注意:self.resultingArray
是一个numpy数组,我查了一下。当我用print self.resultingArray
结束代码的那部分时,它会打印并且type(self.resultingArray)
返回numpy数组。正如我所说,plt.plot()也可以工作,但我需要让它正确地返回数据,所以我可以将该绘图放在我的UI中。提前谢谢。
答案 0 :(得分:0)
由于Calculations
是一个类,因此该行调用隐式构造函数:
self.myPlotData = file2.Calculations(*user info*)
你应该知道构造函数的结果是类的一个实例。这正是您获取type
信息的原因。
如果您确实希望myPlotData
成为数组,请从calcFunc()
实例调用Calculations
。例如:
self.myCalculations = file2.Calculations()
self.myPlotData = self.myCalculations.calcFunc(*user info*)