Pythonの文字列型(str)を完全解説!連結・分割・検索の方法を紹介
生徒
「Pythonで言葉や文章みたいなものを扱いたいんですけど、どうすればいいんですか?」
先生
「Pythonでは『文字列(もじれつ)』というデータ型を使えば、言葉や文章などを簡単に扱えるんだよ。」
生徒
「文字列ってどんなふうに使うんですか?」
先生
「それじゃ、基本の書き方から連結(つなげる)、分割、検索まで、わかりやすく一緒に見ていこうか!」
1. 文字列(str型)とは?
Python(パイソン)では、「文字や記号の集まり」を「文字列(もじれつ)」と呼びます。英語ではstring(ストリング)という言葉で表し、Pythonではstr型として扱われます。
文字列は""(ダブルクォーテーション)や''(シングルクォーテーション)で囲んで表現します。文章だけでなく、数字や記号なども文字列として扱えるので、名前、挨拶、メッセージなど、画面に表示したい多くの情報に使うことができます。
プログラミング初心者の方は「難しそう」と思うかもしれませんが、実際はとても簡単です。次のように書くと、Pythonはそれを文字列として理解してくれます。
greeting = "こんにちは"
name = 'たろう'
message = "今日は" + name + "さんと勉強します"
このように、文字列はパソコンに言葉を伝えるための大切なデータです。特に初心者が最初に触れることが多いデータ型なので、ゆっくり慣れていきましょう。
2. 文字列を画面に表示する方法
print()関数を使えば、文字列をそのまま画面に出すことができます。
message = "Pythonは楽しい!"
print(message)
Pythonは楽しい!
3. 文字列を連結(つなげる)しよう
複数の文字列をつなげたいときは、+記号を使います。たとえば、「こんにちは」と「たろうさん」をつなげて「こんにちはたろうさん」にすることができます。
greeting = "こんにちは、"
name = "たろうさん"
message = greeting + name
print(message)
こんにちは、たろうさん
このように、文字列同士は+で連結できます。
4. 文字列の分割(ぶんかつ)方法:split()
文字列を区切りの文字で分けたいときは、split()というメソッド(関数)を使います。
text = "りんご,バナナ,みかん"
fruits = text.split(",")
print(fruits)
['りんご', 'バナナ', 'みかん']
ここでは「,(カンマ)」で分割して、それぞれが別の要素になっています。split()は「区切り文字でバラバラにする」ための便利な方法です。
5. 文字列の検索:inとfind()
ある文字や言葉が文字列の中にあるかどうかを調べたいときは、inやfind()を使います。
inの例:
sentence = "Pythonは人気のある言語です"
print("Python" in sentence)
print("Java" in sentence)
True
False
find()の例:
sentence = "今日はPythonを勉強します"
print(sentence.find("Python"))
print(sentence.find("Java"))
3
-1
find()は見つかった位置(数字)を返します。見つからなければ-1になります。
6. 文字列の長さを調べよう:len()
文字列が何文字あるかを知りたいときは、len()を使います。
text = "こんにちは"
print(len(text))
5
この例では、「こんにちは」は5文字あるので5と表示されます。
7. 文字列の一部だけを取り出す:インデックス
文字列の中から1文字だけ取り出すには、インデックス(位置の番号)を使います。最初の文字は0番目から数えます。
word = "Python"
print(word[0]) # 最初の文字
print(word[2]) # 3番目の文字
P
t
インデックス番号で1文字ずつ取り出せるのも、文字列操作の基本です。
8. 大文字と小文字の変換:upper(), lower()
英語の文字列では、大文字と小文字の変換も簡単にできます。
text = "Python"
print(text.upper()) # 大文字に変換
print(text.lower()) # 小文字に変換
PYTHON
python
大文字や小文字を統一したいときに便利ですね。
まとめ
今回は、Pythonで文字や文章を扱う「文字列(str型)」について、基本から応用までじっくり学んできました。Pythonにおける文字列操作は、プログラミングの基礎力として非常に大切な部分です。たとえば、ユーザー名を表示したり、データを分けたり、特定のキーワードが含まれているかを調べたりするとき、文字列の知識があると作業がスムーズに進みます。
まずは文字列の基本的な扱い方から始まり、print()による出力、+での連結、split()による分割、inやfind()を使った検索、len()による長さの取得、インデックスでの1文字取り出し、さらにはupper()とlower()での大小文字の変換まで幅広く見てきました。それぞれの使い方には「場面に合った便利さ」があり、たとえば検索処理や文字列整形、データの分割・加工など、日常的な処理に直結しています。
また、Pythonの文字列は日本語も問題なく扱えるため、「こんにちは」や「太郎さん」といった日本語をそのままコード内に書けるのも嬉しいポイントです。たとえば、ユーザーに親しみやすいメッセージを表示する場面などでは、Pythonの文字列機能がそのまま活かされます。
以下は、今回紹介した内容をぎゅっと凝縮したサンプルプログラムです。おさらいとして使ってみてください。
# 文字列まとめ:基本操作
name = "さとう"
greeting = "こんにちは"
message = greeting + "、" + name + "さん"
# 分割・検索・長さ・インデックス・変換
text = "りんご,バナナ,みかん"
fruits = text.split(",") # 分割
found = "バナナ" in fruits # 検索
length = len(message) # 文字数
first = message[0] # 最初の文字
shout = name.upper() # 大文字に変換
# 表示
print(message) # → こんにちは、さとうさん
print(fruits) # → ['りんご', 'バナナ', 'みかん']
print(found) # → True
print(length) # → 10
print(first) # → こ
print(shout) # → サトウ
文字列は、ちょっとしたテキスト処理からユーザー向けの出力メッセージ、ログやファイル操作に至るまで、Pythonのあらゆる場面で必要になります。まずは今回学んだことをもとに、小さな文字列操作を自分で書いてみることが大切です。「文字を表示する」「つなげる」「調べる」などを一つひとつ丁寧に試していくことで、自然と応用力が身につきます。
さらに一歩進んで、ユーザー入力やファイルの中身を文字列として扱うなど、実践的な場面でも今回の知識はすぐに活かせます。難しい関数や構文にいきなり進むより、まずはこうした基本的な文字列操作をしっかり理解することが、後の学習に大きく役立ちます。
生徒
「Pythonの文字列って、思ってたよりもいろんなことができるんですね!」
先生
「そうなんだよ。たとえば表示、連結、分割、検索、すべて基本の操作だけど、どれも実務でよく使うんだ。」
生徒
「split()でリストに変えたり、find()で場所を探したりできるのは便利ですね。」
先生
「その通り。しかもPythonは日本語もそのまま使えるから、実際に使う場面を想像しながら覚えると、ぐっと理解しやすくなるよ。」
生徒
「これでユーザー向けのメッセージも自在に作れそうです!」
先生
「うん、次はユーザー入力やファイルの文字列操作も試してみようか。基本ができていれば応用も怖くないよ。」