Python 什么';分配带括号和不带括号的函数有什么区别?
python和Python 什么';分配带括号和不带括号的函数有什么区别?,python,Python,python和 value = getValue() 及 ?使用括号调用函数,如果不使用括号,则会创建对该函数的引用 见下文: >>> def t(): ... return "Hi" ... >>> a = t >>> a <function t at 0x01BECA70> >>> a = t() >>> a 'Hi' >>> >>def t(): ...
value = getValue()
及
?使用括号调用函数,如果不使用括号,则会创建对该函数的引用 见下文:
>>> def t():
... return "Hi"
...
>>> a = t
>>> a
<function t at 0x01BECA70>
>>> a = t()
>>> a
'Hi'
>>>
>>def t():
... 返回“嗨”
...
>>>a=t
>>>a
>>>a=t()
>>>a
“嗨”
>>>
这里有一个很好的链接可以进一步解释:(向下滚动到“定义函数”部分)。value=getValue()
是函数调用和返回值赋值。它的意思是“调用函数getValue
,不带参数,并使value
引用它所返回的任何内容”
value=getValue
表示“makevalue
引用的函数与getValue
引用的函数相同”在第一种情况下,调用a()
获取'Hi'
>>> def t():
... return "Hi"
...
>>> a = t
>>> a
<function t at 0x01BECA70>
>>> a = t()
>>> a
'Hi'
>>>