Python 回文チェッカー

Python スライスを使用して、文字列または数値が回文であるかどうか (前方と後方で同じように読み取られる) かどうかを確認します。

エディターで試してみる

概要

回文とは、スペース、句読点、大文字の区別を無視して、両方向で同じように読める一連の文字または数字です。

Python 文字列はスライスをサポートしているため、`[::-1]` を使用して反転コピーを作成できます。これにより、回文チェックが非常に簡潔になります。

数値の場合は、最初に値を文字列に変換することも、数学ループを使用して逆順に数字を再構築することもできます。

コードと実行の出力

複数の英数字文字列と数値の回文対称性を検証します。

def is_palindrome(val):
    s = str(val).lower().replace(" ", "")
    return s == s[::-1]

test_inputs = [121, 12321, "radar", "Python", "A nut for a jar of tuna"]
for item in test_inputs:
    status = "Palindrome" if is_palindrome(item) else "Not Palindrome"
    print(f"'{item}' -> {status}")
端子出力
'121' -> Palindrome
'12321' -> Palindrome
'radar' -> Palindrome
'Python' -> Not Palindrome
'A nut for a jar of tuna' -> Palindrome

段階的な実装

  • ワードパズルとテキストゲームの開発
  • DNA配列パターンマッチングアルゴリズム
  • 技術面接スクリーニングの課題

よくある質問

数値を文字列に変換せずに回文をチェックするにはどうすればよいでしょうか?

% と // を使用して右から左に数字を抽出し、反転した数字を再構築して、元の数字と一致するかどうかを確認できます。

関連トピック