我是python的新手,我正在为朋友制作一个程序。我想知道是否可以在另一个函数中调用函数,例如:
def hundredsCheck():
if till.hundreds > 0:
till.hundreds -= 1
total -= 100
deposit.hundreds += 1
deposit.total += 100
return
else:
fiftiesCheck()
return
在这种情况下,fiftiesCheck()是一个在hundredCheck()下面定义的函数,并且遵循非常相似的格式。我有两个类,直到和存放,它们只包含我列出的例子中使用的值。
我这样做是为了在占用大量空间的分层if语句中节省空间,所以这会更简单。如果这是一种可行的方法,那么请说明,以及您可能有的任何其他建议。
答案 0 :(得分:1)
你绝对可以用Python中的另一个函数调用一个函数,只要被调用者在调用者的范围内。
查看此问题并回答: Short Description of the Scoping Rules?
缺点:在函数内部,您可以在全局范围,函数范围内调用函数,或者,如果您在类中,则调用类范围。
答案 1 :(得分:0)
确定你甚至可以做像
这样的事情def func1():
print "OK"
def func2():
print "OK"
f1 = func1 #call a function as something else
f1()
def func3():
print "OK"
def f1(): #define a function inside another function
func2()
f1()
func3()
答案 2 :(得分:0)
为什么不试试这个?只需尝试将占位符函数放在一段代码中,然后将其粘贴到python解释器中。
但是为了回答这个问题,这是你的答案。
是。您可以从其他功能调用函数,甚至可以在函数内定义其他函数:
>>> def foo():
... print 'foo'
...
>>> def oop():
... def boo():
... foo()
... print 'boo'
... boo()
... print 'oop'
...
>>> def loo():
... oop()
...
>>> loo()
foo
boo
oop
>>>