1. ホーム
  2. python

[解決済み] Pythonで文字列の隣接する文字の各ペアを交換する最も簡単な方法は何ですか?

2022-02-08 16:33:58

質問内容

文字列の中の文字の組をそれぞれ入れ替えたいのですが、どうすればいいですか? '2143' は次のようになります。 '1234' , 'badcfe' になる 'abcdef' .

Pythonでこれを行うにはどうしたらよいでしょうか?

どのように解決するのですか?

onelinerを使用しています。

>>> s = 'badcfe'
>>> ''.join([ s[x:x+2][::-1] for x in range(0, len(s), 2) ])
'abcdef'

  • s[x:x+2] は x から x+2 までの文字列スライスを返します; 奇数の len(s) に対して安全です。
  • [::-1] はPythonで文字列を反転させます。
  • range(0, len(s), 2) は 0, 2, 4, 6 ... while x < len(s) を返します。