Why is this printing 'None' in the output? [duplicate] Why is this printing 'None' in the output? [duplicate] python python

Why is this printing 'None' in the output? [duplicate]


Because there are two print statements. First is inside function and second is outside function. When a function doesn't return anything, it implicitly returns None.

Use return statement at end of function to return value.

e.g.:

Return None.

>>> def test1():...    print "In function."... >>> a = test1()In function.>>> print aNone>>> >>> print test1()In function.None>>>>>> test1()In function.>>> 

Use return statement

>>> def test():...   return "ACV"... >>> print test()ACV>>> >>> a = test()>>> print aACV>>> 


Because of double print function. I suggest you to use return instead of print inside the function definition.

def lyrics():    return "The very first line"print(lyrics())

OR

def lyrics():    print("The very first line")lyrics()