我有一个函数,其中包含很多内容,因此我决定将其拆分为更小的函数,并在单个函数中调用所有块函数。 - >例如
def main_function(self):
time_subtraction(self)
pay_calculation(self,todays_hours)
和 - >
def time_subtraction(self):
todays_hours = datetime.combine(datetime(1,1,1,0,0,0), single_object2) - datetime.combine(datetime(1,1,1,0,0,0),single_object)
return todays_hours
所以我在这里尝试完成的工作就是让todays_hours
可以使用main_function
。我已经阅读了大量的文档和其他资源,但显然我仍然在努力解决这个问题。
修改 - 这不是班级的方法。它只是一个文件,我有很多功能编码,我会在需要的地方导入它。
答案 0 :(得分:2)
如果要将一个函数的返回值传递给另一个函数,则需要嵌套函数调用:
pay_calculation(self, time_subtraction(self))
...或存储该值以便您可以传递它:
hours = time_subtraction(self)
pay_calculation(self, hours)
作为旁注,如果这些是类中的方法,则应将其称为self.time_subtraction()
,self.pay_calculation(hours)
等,而不是time_subtraction(self)
等。如果它们< em>不是类中的方法,也许它们应该是。
通常,函数采用Spam实例,并且Spam的方法发送self
作为第一个参数,在这种情况下这一切都很好。但是你定义def time_subtraction(self):
的事实意味着这不是正在发生的事情,你对方法与正常功能感到困惑。