Python

Python初学者向け:join()とsplit()メソッドを基本から解説

スポンサーリンク

 

この記事はこんな方におススメです
  • Pythonを始めたばかりで基本から学びたい方
  • Pythonの基本的な部分を速習してまずは全体像を把握しておきたい方

▶ Pythonでデータ分析に取り組みたい方は以下の記事も参考にどうぞ

はじめに

今回は文字列のメソッドであるjoin()とsplit()を基本から解説します。このメソッドは名前から想像できるようにjoin()は結合する、split()は分離する操作をします。join()メソッドでは連結するときに「間に挿入する文字列」を、split()メソッドでは分離するときに基準とする「区切り文字」を指定することができます。

文字列のメソッド

文字列のメソッドは、文字列の置換をするメソッドreplace()や文字列を含むかどうかを判定するメソッド(in演算子やstartswith()やendswith()などのメソッド)、文字列の位置を判定するメソッド、文字列の構成要素を判定するメソッド、大文字/小文字を変換するものなどたくさんあります。今回は多くお文字列のメソッドの中で、連結/分離するメソッドであるjoin()メソッドとsplit()メソッドを扱います。

join()メソッド

joinメソッドは、文字列のリストを1つの文字列に連携することができます。先にjoin()メソッドの使い方をまとめておきましょう。

‘間に挿入する文字列’.join(連結したい文字列のリスト)

早速みていきましょう。まずは文字列のリストを準備します。

# テキストのリストを作成
text=['らくだ','ねこ','さる','しまうま','とら','きりん']
text

この動物たちのリストを連結してみましょう。まずは、「間に挿入する文字列」を指定しないで連結してみましょう。

# 間に挿入する文字列を指定せずに連結
''.join(text)

連結することができました。ただ、動物のなまえがそのまま連結されてしまうとみにくいですね。次は「半角スペース」を間に挿入して連結してみましょう。

# 間に挿入する文字列に「半角スペース」を指定して連結
' '.join(text)

簡単ですね。もちろん、「カンマ」などの記号や、特定の文字列を指定することもできます。

# 間に挿入する文字列に「と」を指定して連結
'と'.join(text)

今回の例では逆に見にくいですねm(__)m
でも、このように「と」という文字列を指定して、連結することもできます。

split()メソッド

次に、先ほどとは逆に分離するメソッドであるsplit()メソッドをみていきましょう。今回も先にsplit()メソッドの使い方を先に整理しましょう。

‘分離したい文字列’.split(‘区切り文字’,’分割回数’)

区切り文字は省略するとdefaultの設定値である’ ‘(半角スペース)で区切られます。また、分割回数も省略可能で、指定しなければすべて分割されます。早速見ていきましょう。まずは分離するテキストを用意しましょう。

# 分離するテキストを作成
text_for_split='https://happy-analysis.com/python/python-topic-studystep.html'
text_for_split

これを「/」で区切ってみましょう。

# 「/」を区切り文字にして分離する
text_for_split.split('/')

ちゃんと「/」で区切られていますね。今回、2つ目の引数である分割回数は省略したので、すべて区切られています。分割回数を指定してみましょう。

# 「/」を区切り文字にして分離する:分割回数を指定
text_for_split.split('/',2)

分割回数に2回を指定したので、先頭から「/」があるたびに2回分割をおこない、3つの要素からなるリストが得られます。そのため3つ目の要素には「/」が残ってますね。

「,(カンマ)」で区切って分離する例も見ておきましょう。カンマで区切る場合には区切り文字の指定を省略することができます。

# 「,」で区切る場合
'apple,orange,banana'.split()

ちゃんとできていますね。これは次のコードでも同じ結果が得られます。

# 「,」で区切る場合
'apple,orange,banana'.split(',')
スポンサーリンク

まとめ

今回は数多くある文字列のメソッドの中から、join()メソッドとsplit()メソッドを解説しました。これらの操作は、データを扱うときには非常によく使います。基本操作として押さえておきましょう。

コメント

タイトルとURLをコピーしました