レコード#
今日は新しい知識を学ぶことはありませんでしたが、コーディングの練習を行いました。
この問題は、英単語が回文かどうかを判断するもので、前から読んでも後ろから読んでも同じです。ヒントによると、使用する必要がある関数は string.reverse () であり、これは文字列を反転させる関数です。
コードでは、次の 3 つの要件を満たす必要があります:再帰、文字列スライス、ループ。
コードの基本的なロジックは以下の通りです:
- ユーザーが単語を入力します。
- その単語が回文かどうかを判断します。
- Yes または No を出力します。
今日の問題は難しかったです。最初は string.reverse () を使用して文字列を反転させることができると思っていましたが、後でそのメソッドが存在しないことに気づきましたので、正しい答えを確認する必要がありました。
その後、string [-1] と string [:-1] の部分でかなりの時間をかけて理解するために取り組みました。最初に GPT-3 に質問しましたが、理解できませんでした。その後、GPT-4 が説明してくれたことで理解できました。string [-1] は文字列のインデックスを表し、文字列の最後の文字を示します。一方、string [:-1] は文字列スライスの使用法であり、範囲の取得を表します。つまり、0 から最後から 2 番目の文字までです。
コード#
def radar(vstr):
if len(vstr) <= 1:
return True
elif vstr[0] != vstr[-1]:
return False
return radar(vstr[1:-1])
while True:
vstr = input("入力 > ")
print(radar(vstr))