Ternary Operators vs your every day "if" statement

Question here, is there any difference if one uses ternary operators or the regular “if” statements aside from the line space it takes ? or is it just to make the code more clean ?
I want to take the FizzBuzz exercise (4-Functions, 13) for example.

``````def fizz_buzz(input):
if(input % 3 == 0) and (input %5 == 0):
return "FizzBuzz"
if input % 3 == 0:
return "Fizz"
if input % 5 == 0:
return "Buzz"
return input
``````

we have a series of “if” statements and there is a chance based on the input that the “return” will be triggered before the whole code is ran.

``````def fizz_buzz(number):
message = "fizz" if number % 3 == 0 else ""
message += "buzz" if number % 5 == 0 else ""
message = number if message == "" else message
return message
``````

on the other hand here we have ternary operators but the code must run to the end in order to return an output but it is all minimized into 4 lines and the technically the number of "if"s is the same.
is it more advisable to write functions that have a chance to “return” before they are ran to completion over using those ternary thingies ?