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

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

文字列の連結(コンカティネーション)とは、2つ以上の文字列を1つに結合することを指します。例えば、「Tutorials」と「Point」という2つの文字列を連結すると「TutorialsPoint」という1つの文字列になります。

この記事では、Pythonで2つの文字列を連結するためのさまざまな方法を、コード例と実行結果とともにわかりやすく解説します。

1. 「+」演算子を使う方法

Pythonで最もシンプルな文字列連結の方法は、「+」演算子を使うことです。演算子を文字列の間に置くだけで結合でき、3つ以上の文字列の連結にも対応しています。

s1="Tutorials"
s2="Point"
s3=s1+s2
s4=s1+" "+s2
print(s3)
print(s4)

出力

TutorialsPoint
Tutorials Point

変数s4のように、間に半角スペース(" ")を挿入することで、連結後の文字列の間に空白を入れることも可能です。

2. 「%」演算子(%フォーマット)を使う方法

Pythonでは、C言語由来の「%」演算子によるフォーマット指定でも文字列を組み合わせることができます。「%s」は文字列型のプレースホルダーを表します。

s1="Tutorials"
s2="Point"
s3="%s %s"%(s1,s2)
s4="%s%s"%(s1,s2)
print(s3)
print(s4)

出力

Tutorials Point
TutorialsPoint

「%s」は文字列データ型を意味します。出力結果において2つの文字列の間にスペースが入るかどうかは、「%s %s」のように書式文字列内にスペースが含まれているかどうかで決まります。上記の例を見ると、その違いが明確にわかります。

3. join()メソッドを使う方法

join()は、リストやタプルなどの要素のシーケンスを1つの文字列に結合するための文字列メソッドです。区切り文字を自由に指定できるため、2つの文字列の連結にも利用できます。

s1="Tutorials"
s2="Point"
s3="".join([s1,s2])
s4=" ".join([s1,s2])
print(s3)
print(s4)

出力

TutorialsPoint
Tutorials Point

空文字列""を区切り文字に指定すればそのまま連結され、半角スペース" "を指定すれば間に空白が入ります。多数の文字列を効率的に連結したい場合に特に有効な方法です。

4. format()メソッドを使う方法

format()は文字列のフォーマットを行う関数で、これを使っても2つの文字列を連結できます。「{}」の中括弧が、文字列変数の挿入位置を示します。

s1="Tutorials"
s2="Point"
s3="{}{}".format(s1,s2)
s4="{} {}".format(s1,s2)
print(s3)
print(s4)

出力

TutorialsPoint
Tutorials Point

「{}」が文字列変数の位置を決定し、「{} {}」の間にあるスペースが、出力結果における連結された2つの文字列の間のスペースになります。

まとめ:使い分けのポイント

Pythonで文字列を連結する主な方法として、「+」演算子、「%」演算子、join()メソッド、format()メソッドの4つを紹介しました。それぞれの特徴は以下の通りです。

  • +演算子:最もシンプルで直感的。少数の文字列を連結するのに最適。
  • %演算子:古いスタイルのフォーマット。レガシーコードでよく見られる。
  • join():リストなど多数の文字列を高速に連結したい場合に有利。
  • format():可読性が高く、複雑なフォーマットにも柔軟に対応できる。

用途に応じて最適な方法を選びましょう。なお、Python 3.6以降ではf文字列(f-string)を使った連結も広く使われており、より簡潔に書けるため、あわせて覚えておくと便利です。

  1. Pythonで文字列のリストを並べ替える方法:sort()とsorted()の使い分け

    Pythonでは、文字列のリストを並べ替える方法が2つ用意されています。リスト自体を直接変更するsort()メソッドと、元のリストを保持したまま新しい並べ替え済みリストを作成するsorted()関数です。それぞれの特徴と使い方を解説します。 sort()メソッドでリストをその場で並べ替える sort()は、リストそのものを並べ替える「in-place(破壊的)」な操作です。元のリストの順序が直接変更されるため、戻り値を受け取る必要はありません。 >>> a = [Hello, My, Followers] >>> a.sort() >>>

  2. Pythonで2つの文字列を結合して1つにまとめる方法:+演算子とjoin()メソッドの使い方

    Pythonで文字列を結合する基本:+演算子Pythonで2つの文字列を1つに結合するには、連結演算子「+」を使用します。最もシンプルでよく使われる方法です。以下の例を見てみましょう。str1 = Hello str2 = World str3 = str1 + str2 print(str3)このコードを実行すると、次の出力が得られます。HelloWorldこのように、+演算子を使えば、2つの文字列がそのまま順番に連結され、新しい1つの文字列として生成されます。複数の文字列を結合する:join()メソッド3つ以上の文字列をまとめて結合したい場合や、要素の間に区切り文字を挿入したい場合は、st