私は再帰関数を使用してFizzBuzzを解決しようとしています(しかし、これは私がまだ問題を抱えているわけではありません)。私は、ユーザーが入力したかどうかを確認する if文を持って「Y」がまたは「Y」が、それはまだ条件が真であると私はその理由を把握できない場合でも動作します。私は私の髪を引っ張るように感じる。問題はexit_checkです。条件がfalseの場合、私のif文はまだ実行されていますか?
import sys
final = []
def fizzbuzz(n):
if n % 5 == 0 and n % 3 == 0:
print('Append: FizzBuzz')
final.append('FizzBuzz')
elif n % 3 == 0:
print('Append: Fizz')
final.append('Fizz')
elif n % 5 == 0:
print('Append: Buzz')
final.append('Buzz')
else:
print('Append: ' + str(n))
final.append(n)
exit_check = input('Exit check: ')
if exit_check == 'y' or 'Y':
print('Why does this still get called with the wrong variable?: ' + exit_check)
sys.exit()
if n > 0:
fizzbuzz(n - 1)
print(final)
fizzbuzz(10)
"if exit_check ..."という行に誤植があると思います。 if(exit_check in ['y'、 'Y']) – Serenity