leedcode-Fizz Buzz

自己写的

from typing import List

class Solution:
    def fizzBuzz(self, n: int) -> List[str]:
        # 初始化结果列表
        res = []
        # FizzBuzz 对应的字符串列表
        myli = ["Fizz", "Buzz", "FizzBuzz"]
        
        # 遍历1到n的每个数字
        for i in range(1, n+1):
            # 如果同时是3的倍数和5的倍数
            if self.is3times(i) and self.is5times(i):
                # 添加FizzBuzz到结果列表
                res.append(myli[2])
            # 如果是3的倍数但不是5的倍数
            elif self.is3times(i) and not self.is5times(i):
                # 添加Fizz到结果列表
                res.append(myli[0])
            # 如果是5的倍数但不是3的倍数
            elif not self.is3times(i) and self.is5times(i):
                # 添加Buzz到结果列表
                res.append(myli[1])
            # 如果既不是3的倍数也不是5的倍数
            else:
                # 添加数字的字符串形式到结果列表
                res.append(f"{i}")
        # 返回结果列表
        return res
    
    # 判断是否是3的倍数
    def is3times(self, n):
        if n % 3 == 0:
            return True
        else:
            return False
    
    # 判断是否是5的倍数
    def is5times(self, n):
        if n % 5 == 0:
            return True
        else:
            return False

 

posted @ 2024-04-25 19:12  Junior_bond  阅读(10)  评论(0)    收藏  举报