function/method assigment
Steve Holden
steve at holdenweb.com
Fri Apr 13 12:34:15 EDT 2007
viscroad at gmail.com wrote:
> I have a confusion when I do some practice, the code and output are as
> following,
>
>>>> def fun():
> print 'In fun()....'
>
>
>>>> testfun = fun()
> In fun()....
>>>> print testfun
> None
>>>> testfun2 = fun
>>>> print testfun2
> <function fun at 0x00CC1270>
>>>> print testfun2()
> In fun()....
> None
>
> what is 'testfun'? Why it is 'None'? And print testfun2(), what is the
> meaning of 'None'?
>
> Thanks!
>
>
When a function does not specifically return a value then its return
value is a particular value known as None, the only instance of the None
type.
So testfun is the result of calling the fun function, and it's None
because fun() does not return a value.
Since testfun2 is just another reference to the fun function, testfun2()
is None for exactly the same reasons.
regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://del.icio.us/steve.holden
Recent Ramblings http://holdenweb.blogspot.com
More information about the Python-list
mailing list