Keep your place in this quest

Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.

Strings and Formattingのレッスンへようこそ!

ここでは、Pythonでの文字列の基本操作について学びます。文字列の作成方法、連結の仕方、一部の抽出、そして変数を複雑な連結なしで文字列に挿入する方法を探ります。


文字列とは?

Pythonでは文字列とは単に文字の並びを引用符で囲んだものです。
シングルクォート('Hello')かダブルクォート("Hello")のどちらでも動作は同じです。

例:

name = "John"

名前やメッセージ、テキストとしての数字、または空文字列("")を変数に格納できます。 文字列は最も一般的なデータ型の一つで、ユーザー入力から結果表示まで幅広く使います。

TIP: テキストにアポストロフィが含まれる場合は、"I'm learning Python" のようにダブルクォートを使うと良いです。

文字列の連結

連結とは、二つ以上の文字列を結合して一つの文字列にする操作です。 Pythonでは+演算子を使って連結できます。

例:

first_name = "John"
last_name = "Smith"

full_name = first_name + " " + last_name
print(full_name)

出力:

John Smith

ここで" "は空白の文字列なので、"JohnSmith"のように繋がらずに済みます。

Note: +演算子は両方が文字列の場合のみ機能します。文字列と数字を組み合わせるとエラーになるので、数字は必ずstr()で文字列に変換してください。

文字列のスライス

文字列の一部だけが必要な場合もあります。 Pythonでは角括弧内に開始終了の位置を指定して文字列を“スライス”できます。

phrase = "Learning Python is fun"

first_word = phrase[0:8]
print(first_word)

出力:

Learning
  • 最初の数字は開始インデックス(0は最初の文字)です。
  • 二番目の数字は終了インデックスですが、この位置は含まれず、その一つ前までが対象です。
TIP: 開始または終了のインデックスを省略すると、文字列の最初から、または最後までスライスできます。
例: phrase[:8] → "Learning"

文字列のフォーマット

フォーマットとは、連結せずに文字列の中に変数を挿入する方法です。

方法1: .format()

name = "John"
age = 30

sentence = "My name is {} and I am {} years old.".format(name, age)
print(sentence)

方法2: 旧式の %スタイル

sentence = "My name is %s and I am %s years old." % (name, age)

方法3: f-string (Python 3.6以降)

sentence = f"My name is {name} and I am {age} years old."

どの方法も以下を出力します:

My name is John and I am 30 years old.
IMPORTANT!: 現在はf-stringが短くて読みやすく、より推奨されています。

まとめ

文字列操作の基本的な3つの技術を学びました:

  • 連結 — 文字列を繋げる。
  • スライス — 文字列の一部を取り出す。
  • フォーマット — 変数を文字列にきれいに埋め込む。

これらはそれぞれ異なる場面で役立ち、Pythonプログラムを作る上で頻繁に使うことになります。

次のレッスンでは、リストとタプルについて学びます。これらはデータの集合を効率よく扱う強力な方法です。