def count_vowels(s):
if not s:
return 0
elif s[0] in VOWELS:
return 1 + count_vowels(s[1:])
else:
return 0 + count_vowels(s[1:])
이 코드는 문자열의 모음 수를 찾는 데 완벽하게 작동합니다. 재귀가 항상 기본 사례를 요구한다는 것도 이해합니다. 이 코드의 주요 문제는 첫 번째 if 문이 실제로 의미하는 것입니다. 무엇을 검사하고 있습니까?파이썬 재귀 모음 수
if not s:
return 0
그 부분없이 코드를 작성하는 방법이 있습니까?
설명해 주셔서 감사합니다. 루프에 대한 예는이 시점에서 재귀보다 더 이상적으로 보일 수 있지만 그러한 것은 할당입니다. – b0b0