見出し画像

Python palindrome(回文)

今回はPythonの勉強をしたので共有したいと思います。
前から読んでも、後ろから読んでも同じなのかを判断するプログラムの共有したいと思います。

複数あるので何個か共有します

一つ目

s = 'racecar'
print(s == ''.join(reversed(s))) # reversedで判断する。

reversedで逆にして判断をする。

二つ目

print(s == s[::-1]) # インデックスで文字を逆にする。

三つ目

def sample2(moji):
    """回文か判断"""
    len_string = len(moji) # 文字の長さをセット
    if not len_string:
        return False
    if len_string == 1# 一文字の場合はTrue
        return True
    start, end = 0, len_string -1
    while start < end: # 全ての文字をチェックするまでループ
        if moji[start] != moji[end]: # startとendの文字のインデックスを確認している。
            return False # Falseを返す。
        start += 1
        end -= 1
    return True
flg = sample2('test')
if flg:
    print('yes')
else:
    print('no')

最初の二つは簡単ですが最後の一つは少し難しいです。
少しでも理解できるようにしましょう!!

以上になります!

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?