我已经将一些数据(例如,几千笔交易(导入到熊猫中,现在我必须对其进行一些分析。示例包括计算变异性,回归等。我正在考虑设计一个类,以将数据导入和存储在对象中,然后在其上调用方法。但是,我认为我可以作为方法写的许多目标都是相互依存的。换句话说,method3
需要method2
的输出,该输出本身需要method1
的输出。因此,很明显,我无法直接致电data.method3()
。
我如何设计这样的课程?
更大的问题:我什至应该设计一个课程或仅编写此类问题的程序代码?
班级方法调用其他类方法是完全可以的,因此您可以使用Method2 Call Method1等。考虑此示例:
class MyDataHandler(object):
def __init__(self, val):
self.val = val
def method1(self):
return(2 * self.val)
def method2(self):
return(self.method1() + 1)
if __name__ == '__main__':
data_handler = MyDataHandler(2)
print(data_handler.method2())
使用OOP与功能编程是一个设计决策,两种样式都可以使用,因此,如果需要,请使用类。请注意,您还可以存储例如方法1在变量中,然后在运行方法2时,请使用方法1的预定结果。
您可以简单地从依赖方法调用依赖关系方法。请参阅下面的简单示例:
def is_integer(n):
# First Function, no dependency
""" Validate is Integer"""
return isinstance(n, int)
def sqaure(n):
# Depends on "is_integer"
if is_integer(n):
return n * n
return "Not a valid integer: '{}'".format(n)
def print_my_square(n):
# Depends on "square"
print sqaure(n)
输出:
>>> print_my_square('n')
Not a valid integer: 'n'
>>> print_my_square(99)
9801
关于您的更大问题>"更大的问题:我什至应该设计课程或仅编写此类问题的程序代码?"
在python中使用classes in python