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)を使った連結も広く使われており、より簡潔に書けるため、あわせて覚えておくと便利です。
-
Pythonで文字列のリストを並べ替える方法:sort()とsorted()の使い分け
Pythonでは、文字列のリストを並べ替える方法が2つ用意されています。リスト自体を直接変更するsort()メソッドと、元のリストを保持したまま新しい並べ替え済みリストを作成するsorted()関数です。それぞれの特徴と使い方を解説します。 sort()メソッドでリストをその場で並べ替える sort()は、リストそのものを並べ替える「in-place(破壊的)」な操作です。元のリストの順序が直接変更されるため、戻り値を受け取る必要はありません。 >>> a = [Hello, My, Followers] >>> a.sort() >>>
-
Pythonで2つの文字列を結合して1つにまとめる方法:+演算子とjoin()メソッドの使い方
Pythonで文字列を結合する基本:+演算子Pythonで2つの文字列を1つに結合するには、連結演算子「+」を使用します。最もシンプルでよく使われる方法です。以下の例を見てみましょう。str1 = Hello str2 = World str3 = str1 + str2 print(str3)このコードを実行すると、次の出力が得られます。HelloWorldこのように、+演算子を使えば、2つの文字列がそのまま順番に連結され、新しい1つの文字列として生成されます。複数の文字列を結合する:join()メソッド3つ以上の文字列をまとめて結合したい場合や、要素の間に区切り文字を挿入したい場合は、st