我正在使用Anaconda发行版中的Python 2.7。我正在尝试将复杂的数据集成过程组织到不同的类和函数中,以便我可以更好地管理它。
作为一个简化示例,我将一部分流程放在名为function_test.py
import pandas as pd
import numpy as np
class Perform:
def work(self):
test_df = pd.DataFrame(np.random.randn(10,4), columns=['a','b','c','d'])
print "really?"
print test_df
我想从function_call.py
调用并执行上述逻辑,该逻辑位于同一目录中:
import function_test
perform = function_test.Perform
perform.work
但是,当我执行function_call.py时,我收到以下消息,并且没有打印任何内容。
UMD has deleted: function_test
如何设置此示例以便导入并执行function_test,以便在function_call.py中提供test_df?
感谢任何建议。
答案 0 :(得分:1)
首先,不要使用旧式的课程:
class Perform:
pass
使用新式课程:
class Perform(object):
pass
接下来,您应该记住 - work
是类Perform
的方法。所以你应该首先实例化它:
perform = function_test.Perform()
perform.work()
现在有效吗?
答案 1 :(得分:1)
添加括号。
perform = function_test.Perform()
perform.work()