Here is a demo of what you are seeing in the first case:
>>> def f1(): return 7
...
>>> print f1()
7
Here is a demo of what you are seeing in the second case:
>>> def f2(): pass
...
>>> print f2()
None
And if you are looking to make the first function you have more concise, use this form:
>>> def bigger(x,y):
... return x if x>y else y
...
>>> print bigger(2,7)
7
Or just use the builin max (as stated in the comments) which has the advantage of returning the max of a sequence:
>>> max([1,2,3,4,5,6,7])
7
>>> max('abcdefg')
'g'
Or doing something like the max element of a data element, like the second integer of a tuple:
>>> max([(100,2),(50,7)], key=lambda x: x[1])
(50, 7)