Pythonで色々な方法で文字列を逆順、反転させる方法

スポンサーリンク

この記事では、Pythonで文字列を反転させる方法を解説していきます。

スポンサーリンク

Pythonで文字列を反転させる方法とは?

Pythonは文字列を反転させるreverse()などの文字列関数をサポートしていません

つまり、自分で文字列反転を自作する必要があるわけですが、Pythonにおける文字列反転方法は、下記のとおりです。

  1. forループを使う
  2. whileループを使用した場合
  3. slice(スライシング)を使用します。
  4. join() メソッドを使用します。
  5. 再帰を使用する
  6. リスト reverse() メソッドを使用します。

以下はそれぞれの方法を解説していきます。

forループを使って文字列を逆順にする

def rev_string_loop(s):
          res = ''
          for x in s:
            res = x + res
          return res

str = 'STRING'
print(rev_string_loop(str))

結果は、以下の通りになります。

GNIRTS

whileループを使って文字列を逆順にする

def rev_string_loop(x):
          res = ''
          length = len(x)- 1
          while length >= 0:
            res = res + x[length]
            length = length - 1
          return res

str ='STRING'
print(rev_string_loop(str))

結果は、以下の通りになります。

GNIRTS

スライシングを利用した文字列の反転

input ="STRING"
length = len(input)
res = input[length::- 1 ]
print(res)

結果は、以下の通りになります。

GNIRTS

join()メソッドで文字列を反転させる

input ='STRING'
result =''.join(reversed(input))
print(result)

結果は、以下の通りになります。

 GNIRTS

再帰を使って文字列を逆順にする

def rev_string(x):
          if len(x) == 0:
            return x
          else:
            return rev_string(x[1:]) + x[ 0 ]

x = "STRING"

print(rev_string(x))

結果は、以下の通りになります。

 GNIRTS

reverse()メソッドで文字列を反転させる

input_list = [ 1 , 2 , 3 , 4 , 5 ]
input_list.reverse()
print(input_list)

結果は、以下の通りになります。

[5, 4, 3, 2, 1]

タイトルとURLをコピーしました