Python 将变量从一个函数传递到另一个函数

Python 将变量从一个函数传递到另一个函数,python,python-2.7,scope,argument-passing,Python,Python 2.7,Scope,Argument Passing,我有一个函数,里面有很多东西,所以我决定把它拆分成更小的函数,并在一个函数中调用我所有的块函数。->e、 g 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)

我有一个函数,里面有很多东西,所以我决定把它拆分成更小的函数,并在一个函数中调用我所有的块函数。->e、 g

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
所以我想在这里完成的是让我的主要功能可以使用今天的时间。我已经阅读了大量文档和其他资源,但显然我仍在这方面苦苦挣扎

编辑-
这不是该类的方法。它只是一个文件,我在其中编写了许多函数,并在需要时导入它。

如果要将一个函数的返回值传递给另一个函数,则需要嵌套函数调用:

pay_calculation(self, time_subtraction(self))
…或存储值以便您可以传递:

hours = time_subtraction(self)
pay_calculation(self, hours)
作为旁注,如果这些是类中的方法,您应该将它们称为self.time\u减法、self.pay\u calculationhours等,而不是time\u减法self等。如果它们不是类中的方法,也许它们应该是


通常,函数采用垃圾邮件实例,垃圾邮件方法将self作为第一个参数是有意义的,在这种情况下,这一切都很好。但是,您定义了def time\u subgrationself:这一事实意味着这里并不是这样,您对方法和普通函数感到困惑。

仅仅存储结果有什么问题?todays\u hours=time\u self?如果这些不是方法,为什么要命名第一个参数self?这会误导任何读过它的人。非常感谢我的朋友,正确的观点1对于给出答案,我觉得我知道,但只是不想这样做lol。