Создайте функцию, которая принимает число в качестве аргумента и возвращает “Fizz”, “Buzz” или “FizzBuzz”.
Скачивайте книги ТОЛЬКО на русском языке у нас в телеграм канале: PythonBooksRU
- Если число кратно 3, то на выходе должно получиться “Fizz”.
- Если заданное число кратно 5, результатом должно быть “Buzz”.
- Если заданное число кратно и 3, и 5, на выходе должно получиться “FizzBuzz”.
- Если число не кратно ни 3, ни 5, то оно должно быть выведено само по себе, как показано в примерах ниже.
- Вывод всегда должен быть строкой, даже если число не кратно 3 или 5.
Примеры:
fizz_buzz(3) ➞ "Fizz" fizz_buzz(5) ➞ "Buzz" fizz_buzz(15) ➞ "FizzBuzz" fizz_buzz(4) ➞ "4"
Примечание:
Старайтесь быть внимательными к тому, как вы пишете слова и где ставите заглавные буквы.
Варианты решений:
def fizz_buzz(num): return "Fizz"*(num%3 == 0) + "Buzz"*(num%5 == 0) or str(num)
def fizz_buzz(num): s = '' if num%3 == 0: s += 'Fizz' if num%5 == 0: s += 'Buzz' return s if s else str(num)
fizz_buzz = lambda n: (n%3 < 1)*"Fizz" + (n%5 < 1)*"Buzz" or "%d"%n
def fizz_buzz(num): if num % 3 == 0 and num % 5 == 0: return "FizzBuzz" elif num % 5 == 0: return "Buzz" elif num % 3 == 0: return "Fizz" else: return str(num)