文字列の基本操作を学ぼう
学習の目標
本章では、以下の内容を学習します。
- 文字列の基本的な作成方法を理解する
- シングルクォートとダブルクォートの使い分けを学ぶ
- 文字列の連結(+演算子)の使い方を習得する
- 文字列の長さを調べる(len関数)方法を身につける
文字列とは何か
文字列とは、文字や記号を並べたデータのことです。名前、住所、メッセージなど、プログラムで文字を扱う場面は非常に多くあります。
Pythonでは、文字列をクォート(引用符)で囲むことで表現します。数値とは違い、文字列は必ずクォートで囲む必要があります。
VS Codeで新しいファイル string_practice.py
を作成して、文字列の基本的な使い方を学んでいきましょう。
文字列の基本的な作成方法
ダブルクォートを使った文字列
最も基本的な文字列の作成方法は、ダブルクォート(")で文字を囲むことです。
message = "こんにちは"
name = "太郎"
print(message)
print(name)
実行すると、以下のように表示されます。
こんにちは
太郎
シングルクォートを使った文字列
ダブルクォートの代わりに、シングルクォート(')を使って文字列を作ることもできます。
greeting = 'おはよう'
city = '東京'
print(greeting)
print(city)
実行結果は以下のようになります。
おはよう
東京
ダブルクォートとシングルクォートのどちらを使っても、同じように文字列を作ることができます。
シングルクォートとダブルクォートの使い分け
基本的な使い分け
通常はどちらを使っても同じですが、文字列の中に引用符が含まれる場合は使い分けが必要になります。
# 文字列の中にシングルクォートが含まれる場合
message1 = "I'm happy"
# 文字列の中にダブルクォートが含まれる場合
message2 = '彼は"こんにちは"と言った'
print(message1)
print(message2)
実行すると、以下のように表示されます。
I'm happy
彼は"こんにちは"と言った
このように、文字列の中に含まれる引用符と異なる種類の引用符で囲むことで、正しく文字列を作ることができます。
空の文字列
何も文字が入っていない空の文字列も作ることができます。
empty_string = ""
print(empty_string)
print("空の文字列の後")
実行結果は以下のようになります。
空の文字列の後
1行目は何も表示されず、2行目に「空の文字列の後」が表示されます。
文字列の連結(+演算子)
基本的な文字列の連結
文字列同士を +
演算子で繋げることができます。これを文字列の連結と呼びます。
first_name = "田中"
last_name = "花子"
full_name = last_name + first_name
print(full_name)
実行すると、以下のように表示されます。
田中花子
文字列と文字を組み合わせる
複数の文字列や文字を組み合わせて、より長い文字列を作ることもできます。
greeting = "こんにちは、"
name = "佐藤"
suffix = "さん"
message = greeting + name + suffix
print(message)
実行結果は以下のようになります。
こんにちは、佐藤さん
スペースや句読点の追加
読みやすい文章を作るため、スペースや句読点を文字列として追加することもよくあります。
word1 = "今日"
word2 = "は"
word3 = "良い"
word4 = "天気"
word5 = "です"
sentence = word1 + word2 + word3 + word4 + word5
print(sentence)
実行すると、以下のように表示されます。
今日は良い天気です
文字列の長さを調べる(len関数)
len関数の基本的な使い方
文字列が何文字で構成されているかを調べたい時は、len()
関数を使います。
text = "プログラミング"
length = len(text)
print(text)
print(length)
実行すると、以下のような結果が表示されます。
プログラミング
8
「プログラミング」は8文字なので、len()
関数の結果として 8
が返されています。
空の文字列の長さ
空の文字列の長さは0になります。
empty = ""
length = len(empty)
print(f"空の文字列の長さ: {length}")
実行結果は以下のようになります。
空の文字列の長さ: 0
英語と日本語の文字数
英語と日本語が混在した文字列でも、正しく文字数を数えることができます。
mixed_text = "Hello世界"
length = len(mixed_text)
print(f"'{mixed_text}'の長さ: {length}")
実行すると、以下のように表示されます。
'Hello世界'の長さ: 7
「Hello」が5文字、「世界」が2文字で、合計7文字として正しく計算されています。
文字列操作を組み合わせてみよう
ここまで学んだ文字列操作を組み合わせて、実用的なプログラムを作ってみましょう。
# 自己紹介文を作成するプログラム
first_name = "山田"
last_name = "太郎"
age = "25"
hobby = "読書"
# 文字列を連結して自己紹介文を作成
introduction = "私の名前は" + first_name + last_name + "です。年齢は" + age + "歳で、趣味は" + hobby + "です。"
print(introduction)
print(f"自己紹介文の長さ: {len(introduction)}文字")
このプログラムを実行すると、以下のような結果が表示されます。
私の名前は山田太郎です。年齢は25歳で、趣味は読書です。
自己紹介文の長さ: 31文字
各部分を変数に分けて管理することで、後から簡単に内容を変更できるプログラムになっています。
f文字列との比較
前の章で学んだf文字列と、今回学んだ文字列連結を比較してみましょう。
name = "鈴木"
age = 30
# 文字列連結を使った場合
message1 = "私の名前は" + name + "で、年齢は" + str(age) + "歳です"
# f文字列を使った場合
message2 = f"私の名前は{name}で、年齢は{age}歳です"
print(message1)
print(message2)
実行すると、両方とも同じ結果が表示されます。
私の名前は鈴木で、年齢は30歳です
私の名前は鈴木で、年齢は30歳です
f文字列の方が書きやすく読みやすいことが多いですが、文字列連結の仕組みも理解しておくことは重要です。
まとめ
本章では、Pythonでの文字列の基本操作について学習しました。習得できた内容は以下の通りです。
文字列をダブルクォートまたはシングルクォートで囲んで作成する方法を理解しました。文字列の中に引用符が含まれる場合の使い分けも学びました。
また、+
演算子を使った文字列の連結方法を習得し、複数の文字列を組み合わせて長い文章を作る技術を身につけました。さらに、len()
関数を使って文字列の長さを調べる方法も理解できました。
文字列の操作は、プログラムでメッセージを表示したり、ユーザーとのやり取りを行ったりする際に欠かせない技術です。今後のプログラミング学習でも頻繁に使うことになりますので、これらの基本操作をしっかりと覚えておきましょう。
Starterプランでより詳しく学習
この先のコンテンツを読むにはStarterプラン以上が必要です。より詳細な解説、実践的なサンプルコード、演習問題にアクセスして学習を深めましょう。