Pythonのエスケープシーケンスとは?改行・タブ・特殊文字の使い方
生徒
「Pythonで文字列を表示するときに、改行やタブを入れる方法ってあるんですか?」
先生
「はい、Pythonではエスケープシーケンス
という仕組みを使って、文字列の中に特別な意味をもたせることができます。」
生徒
「エスケープシーケンスって何ですか?難しそうです…」
先生
「安心してください。パソコン初心者でもわかるように、基本からやさしく解説していきますね。」
1. Pythonのエスケープシーケンスとは?
エスケープシーケンスとは、文字列の中で「改行」や「タブ」など、普通の文字では表せない動作や特殊な文字を表現するための記号の組み合わせのことです。Pythonでは、バックスラッシュ(\
)から始まる文字で表現します。
例えば、改行は \n
、タブは \t
と書きます。
2. 改行を表す「\n」の使い方
改行は文章を次の行に移すときに使います。手紙や本でいう「次の行に書く」と同じ感覚です。
Pythonでは、改行を入れたい場所に \n
を入れます。
print("こんにちは。\nはじめまして。")
こんにちは。
はじめまして。
3. タブを表す「\t」の使い方
タブは文章の先頭を少し右にずらすときに使います。学校の作文で最初の文字を1マス空ける感じです。
Pythonでは、タブを入れたい場所に \t
を使います。
print("名前:\t山田太郎")
print("年齢:\t20歳")
名前: 山田太郎
年齢: 20歳
4. ダブルクォーテーション(")やシングルクォーテーション(')を含めたいとき
文字列の中に "
や '
を含めたいとき、そのまま書くとPythonがエラーを出すことがあります。
そのときは、エスケープシーケンスで \"
や \'
を使います。
print("彼は\"Python\"を勉強しています。")
print('それは\'とても楽しい\'ことです。')
彼は"Python"を勉強しています。
それは'とても楽しい'ことです。
5. バックスラッシュ「\」を表示するには?
エスケープシーケンスでは、バックスラッシュ \
を使いますが、そのバックスラッシュ自体を表示したいときはどうするのでしょうか?
その場合は \\
と2回書きます。
print("フォルダは C:\\Users\\UserName にあります。")
フォルダは C:\Users\UserName にあります。
6. エスケープシーケンスの一覧
Pythonでよく使うエスケープシーケンスを以下にまとめます。
\n
:改行\t
:タブ(水平の空白)\\
:バックスラッシュ(\)\"
:ダブルクォーテーション(")\'
:シングルクォーテーション(')
他にも特殊なエスケープシーケンスはありますが、まずは上記をしっかり覚えておけば、初心者のうちは十分です。
7. エスケープシーケンスを使わないで書きたい場合(raw文字列)
Pythonにはエスケープシーケンスを無視して、そのまま文字として表示させる方法もあります。それが raw文字列(ロー文字列)です。
文字列の前に r
をつけて書くと、バックスラッシュが普通の文字として扱われます。
print(r"C:\Users\UserName\Desktop")
C:\Users\UserName\Desktop
このように、r
をつけるとエスケープシーケンスが無効になります。