Pythonで文字列を分割・結合する方法|split()とjoin()の使い方を解説
Pythonには、文字列の分割(split)と結合(join)を行うための組み込みメソッドが標準で用意されています。split()メソッドを使えば文字列を任意の区切り文字で簡単に分割でき、join()メソッドを使えば複数の文字列をひとつに連結できます。本記事では、それぞれの基本的な使い方をサンプルコードとともに解説します。
split Str.split() join Str1.join(str2)
アルゴリズム
ステップ1:文字列を入力する。 ステップ2:分割にはsplitメソッドを、結合にはjoin関数を使用する。 ステップ3:結果を出力する。
各メソッドのポイント
split()は、指定した区切り文字を基準に文字列をリストへ分割します。引数を省略した場合は、スペースなどの空白文字で自動的に分割されます。
join()は、区切り文字となる文字列に対して呼び出し、渡された文字列やリストの各要素を連結した新しい文字列を返します。
サンプルコード(文字列の分割)
# 文字列の分割
str1 = input("スペース区切りの文字列を入力してください :: ")
print(str1.split()) # スペースで分割
str2 = input("カンマ(,)区切りの文字列を入力してください :: ")
print(str2.split(',')) # カンマで分割
str3 = input("コロン(:)区切りの文字列を入力してください :: ")
print(str3.split(':')) # コロンで分割
str4 = input("セミコロン(;)区切りの文字列を入力してください :: ")
print(str4.split(';')) # セミコロンで分割
str5 = input("スペースなしの文字列を入力してください :: ")
print([str5[i:i+2] for i in range(0, len(str5), 2)]) # 2文字ずつ分割
実行結果
スペース区切りの文字列を入力してください :: python program ['python', 'program'] カンマ(,)区切りの文字列を入力してください :: python, program ['python', 'program'] コロン(:)区切りの文字列を入力してください :: python: program ['python', 'program'] セミコロン(;)区切りの文字列を入力してください :: python; program ['python', 'program'] スペースなしの文字列を入力してください :: pythonprogram ['py', 'th', 'on', 'pr', 'og', 'ra', 'm']
最後の例では、スライスとリスト内包表記を組み合わせることで、区切り文字を持たない文字列を2文字ずつに分割しています。range(0, len(str5), 2)により先頭から2文字おきに位置を取り出し、str5[i:i+2]で部分文字列を作成しています。
サンプルコード(文字列の結合)
# 文字列の結合
str1 = input("1つ目の文字列を入力してください :: ")
str2 = input("2つ目の文字列を入力してください :: ")
result = str2.join(str1) # str1の各文字の間にstr2が挿入される
print("結合後の文字列 ::>", result)
実行結果
1つ目の文字列を入力してください :: AAA 2つ目の文字列を入力してください :: BBB 結合後の文字列 ::> ABBBABBBA
この例では、str2("BBB")を区切り文字としてstr1("AAA")の各文字を連結しています。そのため、"A"と"A"の間に"BBB"が挿入され、結果は「ABBBABBBA」となります。join()はこのように、区切り文字を挟みながら要素を連結できる便利なメソッドです。
-
Pythonで文字列を分割する方法|split()メソッドの使い方を解説
プログラミングをしていると、区切り文字(デリミタ)を基準に文字列を複数の部分へ分割したい場面がよくあります。Pythonではsplit()メソッドを使うことで、この処理を簡単に実現できます。さらに、区切り文字や分割回数を指定することで、柔軟に分割処理を制御することも可能です。 split()メソッドの基本 split()メソッドを引数なしで呼び出した場合、空白文字(スペース・タブ・改行など)がすべて区切り文字として扱われ、文字列はリストに分割されて返されます。 一方、第1引数に区切り文字を指定し、第2引数(maxsplit)に最大分割回数を指定すると、左側から指定した回数だけ分割が行われ、残
-
Pythonで文字列を空白で分割する方法:split()と正規表現の使い方
Pythonでは、文字列を空白(スペース・タブ・改行など)で分割する場面がよくあります。ユーザー入力の解析やテキストデータの処理などがその代表例です。この記事では、空白で文字列を分割する代表的な2つの方法を、具体例とともにわかりやすく解説します。 方法1:split()メソッドを使う(おすすめ) 最もシンプルで一般的な方法は、文字列クラスに組み込まれた split() メソッドを使うことです。引数を指定しない場合、デフォルトの区切り文字として「空白文字」が使用され、連続した空白も自動的に適切に処理されます。 >>> Please split this string.spli