Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで区切り文字「K」の前後の文字列を連結する方法

Pythonでは、リスト内の特定の区切り文字(ここでは「K」)を基準に、その前後にある文字列同士を連結してひとつの要素にまとめたいケースがあります。このような処理を実現するには、whileループによるシンプルな反復処理と、リストへの追加を行うappendメソッドを組み合わせるのが効果的です。

サンプルコード

以下に具体的な実装例を示します。

my_list = ["python", "+", 'is', 'fun', "+", 'to', 'learn']

print("The list is :")
print(my_list)

K = "+"
print("The value of K is :")
print(K)

my_result = []
index = 0

while index < len(my_list):

   element = my_list[index]

   if (index < len(my_list) - 1) and my_list[index + 1] == K:
      element = element + K + my_list[index + 2]

      index += 2
   my_result.append(element)
   index += 1

print("The result is :")
print(my_result)

実行結果

The list is :
['python', '+', 'is', 'fun', '+', 'to', 'learn']
The value of K is :
+
The result is :
['python+is', 'fun+to', 'learn']

実行結果を見ると、「+」を挟んでいた「python」と「is」、「fun」と「to」がそれぞれ連結され、['python+is', 'fun+to', 'learn']という新しいリストが生成されていることがわかります。

コードの解説

  • まず、連結対象となる文字列のリストを定義し、コンソールに表示します。

  • 区切り文字となる変数「K」に文字列を代入し、こちらもコンソールに出力します。

  • 連結結果を格納するための空のリストを用意します。

  • 現在の位置を追跡するためのインデックス用の整数変数を0で初期化します。

  • whileループ内で、インデックスがリストの長さ未満であるかを判定し、条件を満たす間だけ処理を繰り返します。

  • 現在のインデックス位置の要素を変数に取り出した後、次の要素が区切り文字「K」と一致するかどうかを確認します。

  • 一致する場合は、現在の要素・区切り文字・その次の要素を文字列連結演算子(+)で結合し、新しい値として変数に代入します。

  • 連結が行われた場合は、区切り文字と次の要素まで処理済みのため、インデックスを2つ進めます

  • 最後に、処理済みの要素を結果リストにappendメソッドで追加し、インデックスを1つ進めて次のループへ移行します。

  • ループが終了した時点で完成した結果のリストをコンソールに表示して終了です。

ポイントまとめ

このアルゴリズムの核心は、「区切り文字の直前と直後の要素をつなげ、その分だけインデックスを先に進める」という点にあります。これにより、同じ要素が二重に処理されることなく、効率よく文字列を連結できます。forループではなくwhileループを使用しているのは、ループ内でインデックスを柔軟に操作できるためです。

  1. Pythonで2つの文字列を連結する方法まとめ|+演算子・join()・format()などを解説

    文字列の連結(コンカティネーション)とは、2つ以上の文字列を1つに結合することを指します。例えば、「Tutorials」と「Point」という2つの文字列を連結すると「TutorialsPoint」という1つの文字列になります。 この記事では、Pythonで2つの文字列を連結するためのさまざまな方法を、コード例と実行結果とともにわかりやすく解説します。 1. 「+」演算子を使う方法 Pythonで最もシンプルな文字列連結の方法は、「+」演算子を使うことです。演算子を文字列の間に置くだけで結合でき、3つ以上の文字列の連結にも対応しています。 例 s1="Tutorials"

  2. Pythonの組み込み関数callable()の使い方をわかりやすく解説

    このチュートリアルでは、Pythonの組み込み関数であるcallable()について詳しく解説します。callable()は引数を1つ受け取り、その引数が呼び出し可能(callable)かどうかを真偽値で返します。Pythonでは、関数やクラスは呼び出し可能なオブジェクトです。一方、整数や浮動小数点数、文字列などの定数値は呼び出すことができないため、callable()はFalseを返します。基本的な構文callable(object)引数に渡したオブジェクトが呼び出し可能であればTrue、そうでなければFalseが返されます。例1:関数が呼び出し可能か確認するまず、関数に対してcallabl