このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。

【Python入門】文字列はシングルクオートまたはダブルクオートで囲む

文字列はシングルクオートまたはダブルクオートで囲む

 Pythonでは、文字列(str型)はテキスト情報を表現するための基本的なデータ型です。文字列リテラルは、シングルクオート (') またはダブルクオート (") で囲んで記述します。どちらを用いても、Pythonインタプリタは同じように文字列として認識します。ここでは、文字列リテラルの基本的な書き方、空文字列の定義、そして文字列内に引用符を含めるためのエスケープシーケンスについて解説します。

プログラムのダウンロード

 「ダウンロード」から、JupyterLab で実行できるサンプルプログラムがダウンロードできます。ファイルは、ESET Endpoint Securityでウイルスチェックをしておりますが、ダウンロードとプログラムの実行は自己責任でお願いいたします。

1.文字列リテラルの基本記法

 Pythonで文字列を表す際は、シングルクオートかダブルクオートのどちらかで囲みます。以下の表は、基本的な記法とその特徴をまとめたものです。

記法説明
シングルクオート'Python Programming'文字列をシングルクオートで囲む
ダブルクオート"Python Programming"文字列をダブルクオートで囲む
空文字列'' または ""0文字の文字列(空の文字列)

実際に、どちらの方法で書いても、Pythonインタプリタは同じ内容として扱います。

例えば、

print('Python Programming')
print("Python Programming")

どちらも実行すると、出力は

Python Programming
Python Programming

と表示されます。

2.文字列内にクオートを含める方法(エスケープシーケンス)

 文字列の中にシングルクオートやダブルクオートを含める必要がある場合、エスケープシーケンスを使用します。エスケープシーケンスとは、バックスラッシュ 「 \ 」(または\ )を用いて、通常は特殊な意味を持つ文字を文字列内に表現する記法です。

以下の表は、よく使われるエスケープシーケンスの例です。

エスケープシーケンス意味
\'シングルクオート
\"ダブルクオート
\\バックスラッシュ
\n改行
\tタブ

 例えば、文字列内にシングルクオートとダブルクオートの両方を含むメッセージを記述したい場合、以下のようにエスケープシーケンスを使います。

print('Can\'t execute "script.py".')
print("Can\'t execute \"script.py\".")

どちらの場合も、実行結果は

Can't execute "script.py".
Can't execute "script.py".

と表示されます。

3.文字列リテラルの柔軟な活用

 Pythonでは、シングルクオートとダブルクオートのどちらも使えるため、文字列内に含まれる引用符に応じて適切な方を選ぶのがよいでしょう。これにより、エスケープシーケンスの記述を最小限に抑え、コードが読みやすくなります。また、空文字列を簡単に表現できる点も利点です。

用途使用するクオートの例
シングルクオートの利用例:'Hello, Python!'
ダブルクオートの利用例:"Hello, Python!"
引用符を含む文字列の記述方法例:"Can't open the file." または 'Loading "hello.py".'

まとめ

ここでは、Pythonの文字列リテラルの基本的な記法について解説しました。

  • 基本記法:文字列はシングルクオートでもダブルクオートでも囲んで表せる。
  • 空文字列'' または "" を使って表現可能。
  • エスケープシーケンス:通常使いにくい文字(シングルクオート、ダブルクオート、バックスラッシュ「 \ 」(または \ )、改行、タブなど)を記述する方法を学びました。
  • クオートの使い分け:文字列内に含まれる引用符に応じて、最適なクオートを選ぶことが推奨されます。

 次のコンテンツでは、文字列リテラルの連結方法やその他の文字列操作について詳しく解説していきます。ぜひ、実際にコードを書いて、上記の記法を体験してみてください。実際にコードを書いて試しながら、文字列の扱い方に慣れていきましょう。