#author("2026-06-25T07:28:45+09:00;2023-02-23T23:33:34+09:00","default:vip","vip") #author("2026-07-04T17:48:29+09:00;2023-02-23T23:33:34+09:00","default:vip","vip") n = int(input("整数を入力してください: ")) if n < 1: n = 0 print("1以上の正の整数を入力して下さい") if n > 300: n = 0 print("300以下の数を入力してください") for a in range(1, n+1): if a % 15 == 0: print("FizzBuzz") elif a % 3 == 0: print("Fizz") elif a % 5 == 0: print("Buzz") else: print(a) これと似たような、ナベアツ問題がありますが、1行で書いた方が居るので紹介しておきます。 ["aho" if x % 3 == 0 or "3" in str(x) else x for x in range(1, 51)] こういう書き方もあります。 [(((x%3==0 or '3' in str(x)) and 'aho') or x) for x in range(1,51)] ワンライナーでFizzBuzz。 print('\n'.join(str(i)*(i%3!=0 and i%5!=0) + 'Fizz'*(i%3==0) + 'Buzz'*(i%5==0) for i in range(1, 101)))