Pythonでのエスケープシーケンスの使い方を解説します。
エスケープシーケンス(エスケープ文字)とは、簡単に言えば「改行」や「タブ」を表す文字のこと。
エスケープシーケンスをうまく利用することで、print関数で出力する文字を改行したり、文字列の中に「”(ダブルクォーテーション)」を埋め込んだりすることができるようになります。
このページでは、初心者向けにエスケープシーケンスの使い方を1から分かりやすく解説します。
Pythonエンジニアであれば知っておきたい基礎知識ですので、是非最後までご覧ください。
エスケープシーケンスとは?
エスケープシーケンスとは、文字そのものではなく、改行やタブなどを表す文字列のことで、別名「エスケープ文字」とも呼称します。
例えば、「¥n」は改行という意味を表すエスケープシーケンス。
print("1行目\n2行目") # \n で改行となります。 """ 1行目 2行目 """
結果は、2行に分かれて表示されるようになります。
このように、改行やタブスペースなどを表すのがエスケープシーケンス(エスケープ文字)です。
ちなみに、「¥」(円マーク)ではなく「\」(バックスラッシュ)で表示される場合もありますが、どちらも意味としては全く同じです。
Pythonで利用できるエスケープシーケンス
Pythonで利用できるエスケープシーケンスのうち、覚えておきたいのは以下6つほど。
エスケープシーケンス | 意味 |
---|---|
¥n | 改行 |
¥' | シングルクォーテーション |
¥" | ダブルクォーテーション |
¥b | バックスペース |
\\ | \マーク(バックスラッシュ) |
¥t | タブ |
この他にも、利用できるエスケープシーケンスはいくつか存在しますが、利用頻度としては低い印象です。上記に示したエスケープシーケンスを覚えておけば実践でも応用できます。
ここでは利用頻度の高い、上記6このエスケープシーケンスについてサンプルコードを用いて解説します。
¥n
「\n」は改行を示すエスケープシーケンスです。これは、冒頭で例として示したエスケープシーケンスです。
print("1行目\n2行目") """ 1行目 2行目 """
\'
「\'」は、シングルクォーテーションを示すエスケープシーケンスです。
なぜ、わざわざシングルクォーテーションを示すエスケープシーケンスが必要になるかと言うと。
print('文字列') # 文字列はシングルクォーテーションで囲む
Pythonでは、文字列をシングルクォーテーションで囲むというルールがあるためです。
したがって、エスケープシーケンスを用いないとシングルクォーテーションを文字列として保持することができません。
print('シングルクォーテーション「'」') # これはSyntaxError: invalid character in identifier print('シングルクォーテーション「\'」') # これは正常に出力されます。 # 結果 ⇒ シングルクォーテーション「'」
文字列の中に、シングルクォーテーションを入れる必要がある場合は上記のエスケープシーケンスを用います。
¥"
「\"」は、ダブルクォーテーションを示すエスケープシーケンスです。
意味と目的は、シングルクォーテーション同様です。文字列の中に、ダブルクォーテーションを入れたい場合は、このエスケープシーケンスを利用する必要があります。
print("ダブルクォーテーション「\"」") # 結果 ⇒ ダブルクォーテーション「"」
エスケープシーケンスを利用しない場合は、構文エラーとなります。
print("ダブルクォーテーション「"」") # 結果 ⇒ SyntaxError: invalid character in identifier
\b
「\b」はバックスペースを表します。
print("Hello World!") print("\bHello World!") """ Hello World! Hello World! """
\
「\\」は円マーク、もしくはバックスラッシュを表します。
print("\\") " 結果 ⇒ \
\t
「\t」はタブを表します。
print("Hello World!") print("\tHello World!") """ Hello World! Hello World! """
これで、エスケープシーケンスの使い方は何となくイメージできたはずです。
エスケープシーケンスについては、Pythonに限らず他の言語でも利用されている考え方ですので、この機会にしっかり理解しておきましょう。
Pythonを1から学習したい方は
Pythonをより実践的に学びたい―。実際にコーディングをしながら学びたい―。独学に限界を感じている―。
そんな方には、無料体験/オンライン完結もあるプログラミングスクールで学ぶのがおすすめです。都度検索しながら知識を補完していくのではなく、1から体系立てて学ぶことで短時間・かつ効率的にスキルハックすることが可能です。
各プログラミングスクールの特徴をまとめた記事をこちらに記載しておきますので、是非ご覧ください。