Let's say I have a function
def x():
print(20)
Now I want to assign the function to a variable called y
, so that if I use the y
it calls the function x
again. if i simply do the assignment y = x()
, it returns None
.
You simply don't call the function.
>>> def x():
>>> print(20)
>>> y = x
>>> y()
20
The brackets tell Python that you are calling the function, so when you put them there, it calls the function and assigns y
the value returned by x
(which in this case is None
).