Python 中的 Fizz Buzz


假设我们有一个数字 n。我们必须输出从 1 到 n 所有数字的字符串形式,但有一些限制。

  • 如果数字可以被 3 整除,则用 Fizz 替换该数字
  • 如果数字可以被 5 整除,则用 Buzz 替换该数字
  • 如果数字可以同时被 3 和 5 整除,则用 FizzBuzz 替换该数字

为了解决这个问题,我们将按照以下步骤进行 −

  • 对于从 1 到 n 的所有数字,
    • 如果某数字可以同时被 3 和 5 整除,则输出“FizzBuzz”
    • 否则,当数字可以被 3 整除时,输出“Fizz”
    • 否则,当数字可以被 5 整除时,输出“Buzz”
    • 否则,将数字写成字符串

示例

让我们看看以下实现,以更好地理解 −

 现场演示

class Solution(object):
   def fizzBuzz(self, n):
      """
      :type n: int
      :rtype: List[str]
      """
      result = []
      for i in range(1,n+1):
         if i% 3== 0 and i%5==0:
            result.append("FizzBuzz")
         elif i %3==0:
            result.append("Fizz")
         elif i% 5 == 0:
            result.append("Buzz")
         else:
            result.append(str(i))
      return result
ob1 = Solution()
print(ob1.fizzBuzz(30))

输入

30

输出

["1","2","Fizz","4","Buzz","Fizz","7","8","Fizz","Buzz","11","Fizz",
"13","14","FizzBuzz","16","17","Fizz","19","Buzz","Fizz","22","23",
"Fizz","Buzz","26","Fizz","28","29","FizzBuzz"]

更新日期:2020 年 4 月 28 日

4 千多浏览量

启动你的 职业

完成课程,获得认证

开始
广告