2-3 文字列の連結・分割

2章 値と計算

文字列の連結・分割

 pythonをつかっていて文字列を分割したり、連結したりしたいことはありませんか?この記事では、初心者向けに「+」をつかった文字列の連結方法、split関数をつかった分割方法を解説しています。

どれも簡単に実装することができるので是非やってみましょう!

文字列の連結

 Pythonにおいて文字列を連結したいとき、「+」の演算子を使って文字列同士を足し合わせることで実現することができます。下のコードを見てみてください。

print("こんにちは。"+"わたしの名前は○○です。")
"""
#実行結果:こんにちは。私の名前は○○です。
"""

 このように2つの文字列を足すことで、連結させ一つの文字列として扱えることが分かります。同じように文字列型の変数についても連結することができます。以下にサンプルコードを載せておきます。

word_1="こんにちは。"
word_2="わたしの名前は○○です。"
words=word_1+word_2
print(words)
#実行結果:こんにちは。私の名前は○○です。

このように変数についても同じように連結させる操作ができることが分かります。上の例では2つの文字列を1つに連結していますが、これは何個に増えても同じように連結することができます。

注意すべき点としては、文字列型と数字型といった具合に違う型どうしを足し算することはできないようになっているので注意が必要です。

  図2ー3-1にわかりやすくまとめておきます。

図2-3-1

 上の図ではエラーになっていますが、もし、数字と文字列型の連結をおこないたい場合には数字を文字列型に変換して、文字列どうしの計算にするという方法があります。

実際に数字を文字列型に変換して、連結した例が以下のコードです。

word_1="リンゴが"
number=1
word_2="個"
apple=word_1+str(number)+word_2
print(apple)
#実行結果:リンゴが1個

数字を文字列型に変化する操作がよくわからない人は以前に解説しているので、そちらをご覧ください。

2-2 型の確認・変換
PythonでType Erorrがでたり、変数の型を知りたかったり、型を変換したかったりすることはありませんか?この記事では、型の確認方法と変換の方法を解説しています。Pythonの変数の型変換・型確認の方法を知りたい方は必見です。

文字列の分割

 ここでは、1つの文字列をいくつもに分割する操作を解説します。今回ご紹介するのは、split関数をつかって特定の文字で文字列をわける方法です。

イメージがわかない方のため、簡単な例を挙げます。図2-3-2を見てください。

分割前は1つの文字列で「リンゴとイチゴと・・・」といったように果物をたくさん列挙しています。これをsprit関数を使って 「と」で区切、分割しています。すると元々1つの文字列だったものが、たくさんの文字列で構成されたリストに変化しました。

図2-3-2

 図で出てきたリストというものは、複数の文字列や数字などの集まりでできているもののことです。つまり例では、リストという箱の中に「リンゴ」などの文字列の塊が4つ入っている状態になっています。

では実際にこれをコードにしてみます。

fruit="リンゴとバナナとイチゴとブドウ"
fruit_list=fruit.split("と")
print(fruit_list)
"""
実行結果:['リンゴ', 'バナナ', 'イチゴ', 'ブドウ']
"""

 行ごとの詳しい解説とsplit関数の一般的な使い方です。

  • 1行目
    変数fruitを定義しその中に文字列「リンゴとバナナ・・・」を代入
  • 2行目
    変数fruit_listを定義しその中に変数fruitにsplit関数を使ったものを代入(split関数の使い方は下参照)。pythonにおいて特定の変数に関数を適応したいときは「変数名.関数名(引数)」とする。
  • 3行目
    fruit_listを表示する

変数名.split(区切りたい文字)

変数を区切りたい文字で分割したリストを返す

今回の例では「と」で文字を分割しましたが、文字であれば「、」や「,」でも分けることができるので活用してみてください。

まとめ

 いかがだったでしょうか?この記事で紹介した方法のほかにも文字列の連結や分割の方法はありますが、今回は基本的な部分のみ紹介させていただきました。途中出てきたリストについては今後また改めて扱っていく予定です。

スポンサーリンク
2章 値と計算
図で分かるPython入門講座

コメント

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