Python中如何从其他文件的函数中获取数组?
直接传递数组的解决方案
你只需要让SimStep函数返回生成的DataFrame,就能在main.py里直接拿到数据,不用绕路读Excel。
修改step.py的代码
给SimStep函数添加返回语句,把计算好的Module_P返回出去:
import pandas as pd # 注意原代码里拼错了panda,应该是pandas def SimStep(ResultFile, param_list): # 这里保留你的计算逻辑... Module_P = pd.DataFrame(columns=["some columns", ...]) # 修正拼写错误:colums→columns # 如果原本有保存Excel的代码,比如 pd.to_excel(ResultFile),可以继续保留不影响 return Module_P # 新增返回语句
修改main.py的代码
调用SimStep时直接接收返回的DataFrame:
import step as step from PyQt5 import QtWidgets # 根据你实际使用的PyQt版本调整 class MainWindow(QtWidgets.QMainWindow): def __init__(self, ...): super().__init__(...) # 别忘了调用父类初始化方法 self.step() def step(self): # 接收SimStep返回的数组(DataFrame) module_p_data = step.SimStep(self.lineResultsFile.text(), param_list) # 现在可以直接用module_p_data做后续处理,比如打印、展示到UI等 print(module_p_data.head())
这样你就能在main.py里直接获取到计算后的数组,完全不需要读取Excel文件。
内容的提问来源于stack exchange,提问作者aydi
相关产品推荐
相关产品推荐

