カテゴリ: Python 更新日: 2026/07/13

Pythonのエスケープシーケンスとは?改行・タブ・特殊文字の使い方

Pythonのエスケープシーケンスとは?改行・タブ・特殊文字の使い方
Pythonのエスケープシーケンスとは?改行・タブ・特殊文字の使い方

先生と生徒の会話形式で理解しよう

生徒

「Pythonで文字列を表示するときに、改行やタブを入れる方法ってあるんですか?」

先生

「はい、Pythonではエスケープシーケンスという仕組みを使って、文字列の中に特別な意味をもたせることができます。」

生徒

「エスケープシーケンスって何ですか?難しそうです…」

先生

「安心してください。パソコン初心者でもわかるように、基本からやさしく解説していきますね。」

1. Pythonのエスケープシーケンスとは?

1. Pythonのエスケープシーケンスとは?
1. Pythonのエスケープシーケンスとは?

エスケープシーケンスとは、プログラミングにおいて「改行」や「タブ(空白)」といった、キーボードで入力してもそのままでは正しく表示できない特殊な指示を出すための仕組みです。

Pythonのプログラム上では、バックスラッシュ(\)と特定の文字を組み合わせることで、コンピュータに「ここは文字ではなく、特別な動作をしてね」と伝えます。例えば、画面上で文章を2行に分けたいときや、項目をきれいに整列させたいときに欠かせない知識です。

ポイント:日本語キーボードでは、バックスラッシュ(\)は「円記号(¥)」として表示されることが一般的ですが、プログラム上では同じ役割を果たします。

まずは、最もよく使われる「改行」の簡単な例を見てみましょう。本来は1行で書いてしまうコードも、エスケープシーケンスを使えば読みやすく表示できます。


# \n を使って、1つの命令で文章を2行に分ける例
print("Python学習中!\n毎日コツコツ頑張ります。")

Python学習中!
毎日コツコツ頑張ります。

このように、\(バックスラッシュ)に続く文字によって、出力結果が大きく変わるのがエスケープシーケンスの面白いところです。これから具体的な種類を一つずつ学んでいきましょう。

2. 改行を表す特殊な文字「\n(エスケープシーケンス)」の使い方

2. 改行を表す特殊な文字「\n(エスケープシーケンス)」の使い方
2. 改行を表す特殊な文字「\n(エスケープシーケンス)」の使い方

プログラミングをしていると、ひとつの print() 命令の中で「ここで文章を折り返して、次の行に表示したい」という場面が出てきます。そんな時に活躍するのが、改行を意味する特殊な記号 \n (バックスラッシュ・エヌ)です。

この \n は「エスケープシーケンス」と呼ばれ、画面には表示されませんが、コンピューターに対して「ここで改行してね」という合図を送る役割を持っています。キーボードの「Enterキー」を文章の中に埋め込むようなイメージで使うと分かりやすいでしょう。

ポイント:バックスラッシュ(\)は、お使いの環境(日本語キーボードなど)によっては「¥(円記号)」として表示されますが、プログラム上では同じ意味として扱われます。

それでは、プログラミング未経験の方でも分かりやすい簡単なサンプルを見てみましょう。自己紹介の文章を2行に分けて表示させてみます。


# \nを使って、挨拶と名前の間で改行するサンプル
print("こんにちは!\n私はPythonの学習を始めたばかりです。")

実行結果は以下のようになります。 \n を書いた部分で、ピタッと文章が切り替わっているのが確認できますね。


こんにちは!
私はPythonの学習を始めたばかりです。

もし \n を使わずに書くと、文章が横に長く続いてしまい、読みづらくなってしまいます。ユーザーにとって見やすい画面を作るために、この改行テクニックは非常に重要です。

3. タブ(水平タブ)を表す「\t」の使い方

3. タブ(水平タブ)を表す「\t」の使い方
3. タブ(水平タブ)を表す「\t」の使い方

プログラミングで「文字の間隔をきれいに揃えたい」と思ったことはありませんか?そんな時に便利なのが、タブ文字(エスケープシーケンス)の \t です。

「タブ」とは、文章の先頭や途中で一定の間隔を空ける機能のこと。学校の作文で段落の最初に1マス空けるようなイメージですが、プログラミングでは「項目名」と「データ」の開始位置をピシッと揃えて、読みやすくするために使われます。

Pythonでこのタブを表現するには、キーボードで直接タブキーを押すのではなく、文字列の中に \t と書き込みます。これにより、実行結果では自動的に適切な余白が挿入されます。


# \t を使って、コロン(:)の後の文字の開始位置を揃える例
print("名前:\t山田太郎")
print("出身:\t東京都")
print("趣味:\tプログラミング")

上記のコードを実行すると、次のように出力されます。


名前:   山田太郎
出身:   東京都
趣味:   プログラミング

スペースを何度も連打して微調整しなくても、\t を入れるだけで表形式のように整った見た目になります。特に、複数のデータを並べて表示させたいときや、ログ(記録)を見やすく出力したいときに非常に役立つテクニックです。

4. 文字列の中で引用符("や')を正しく表示させる方法

4. 文字列の中で引用符(
4. 文字列の中で引用符("や')を正しく表示させる方法

Pythonでプログラミングをしていると、文章の中に「"(ダブルクォーテーション)」や「'(シングルクォーテーション)」を含めたい場面がよくあります。しかし、Pythonはこれらの記号を「文字列の始まりと終わり」を判断する目印として使っているため、そのまま記述すると「どこで文章が終わるのか」をコンピュータが混乱してしまい、エラー(SyntaxError)が発生します。

このように、記号を文字として正しく認識させるためには、記号の前に \(バックスラッシュ、または円記号)を置く「エスケープシーケンス」という手法を使います。これにより、Pythonに「次の記号はプログラムの命令ではなく、ただの文字だよ」と教えてあげることができます。

ポイント:未経験者の方は、\"\' をセットで覚えるのが上達の近道です。また、外側を ' で囲めば内側で " をそのまま使えるというテクニックもありますが、基本のエスケープをマスターしておくと応用が効きます。


# ダブルクォーテーションを表示させたい場合
print("彼は\"Python\"を独学で勉強しています。")

# シングルクォーテーションを表示させたい場合
print('それは\'とても楽しい\'経験になるはずです。')

実行結果は以下の通りです。バックスラッシュ自体は表示されず、目的の記号だけが綺麗に表示されます。


彼は"Python"を独学で勉強しています。
それは'とても楽しい'経験になるはずです。

5. バックスラッシュ「\」自体を画面に表示する方法

5. バックスラッシュ「\」自体を画面に表示する方法
5. バックスラッシュ「\」自体を画面に表示する方法

プログラミングの世界では、バックスラッシュ \ は「後に続く文字に特別な意味を持たせる」という役割(エスケープシーケンス)を担っています。そのため、普通に \ と入力しても、コンピュータは「お、何か特別な命令が始まるな?」と勘違いしてしまい、文字として表示してくれません。

では、Windowsのファイルパス(保存場所)などを説明する際に、どうしてもバックスラッシュそのものを文字として表示したい場合はどうすればよいのでしょうか?

答えは非常にシンプルです。バックスラッシュを2回続けて \\ と入力するだけです。これにより、1つ目のバックスラッシュが「次の文字(バックスラッシュ)をそのまま文字として表示せよ」という打ち消しの役割を果たしてくれます。

初心者の方でも分かりやすい、具体的なサンプルプログラムを見てみましょう。


# フォルダのパスを表示する例
print("パソコン内の保存場所:C:\\Users\\Documents\\PythonProject")

# 記号で区切り線を書く例
print("境界線:\\\\\\\\\\\\")

このコードを実行すると、画面には以下のように表示されます。


パソコン内の保存場所:C:\Users\Documents\PythonProject
境界線:\\\

このように、プログラム上で「2つ書くことで1つ分が表示される」というルールを覚えておくと、ネットワークの設定値やファイルパスを扱う際に、意図しないエラーを防ぐことができます。これはPythonに限らず、PHPやJavaScriptなど多くの言語で共通の重要なテクニックです。

6. エスケープシーケンスの一覧

6. エスケープシーケンスの一覧
6. エスケープシーケンスの一覧

Pythonでよく使うエスケープシーケンスを以下にまとめます。

  • \n:改行
  • \t:タブ(水平の空白)
  • \\:バックスラッシュ(\)
  • \":ダブルクォーテーション(")
  • \':シングルクォーテーション(')

他にも特殊なエスケープシーケンスはありますが、まずは上記をしっかり覚えておけば、初心者のうちは十分です。

7. エスケープシーケンスを使わないで書きたい場合(raw文字列)

7. エスケープシーケンスを使わないで書きたい場合(raw文字列)
7. エスケープシーケンスを使わないで書きたい場合(raw文字列)

Pythonにはエスケープシーケンスを無視して、そのまま文字として表示させる方法もあります。それが raw文字列(ロー文字列)です。

文字列の前に r をつけて書くと、バックスラッシュが普通の文字として扱われます。


print(r"C:\Users\UserName\Desktop")

C:\Users\UserName\Desktop

このように、r をつけるとエスケープシーケンスが無効になります。

まとめ

まとめ
まとめ

Pythonのエスケープシーケンスは、文字列の中に改行やタブ、引用符、バックスラッシュなどの特殊な表現を正しく組み込むための重要な仕組みです。普段何気なく使っている文字列も、実際のプログラミングの現場では見やすい形に整えたり、複数行の文章を扱ったり、ファイルパスを表示したりといった場面で工夫が必要になります。そうしたときに、\n や \t、\"、\\ などのエスケープシーケンスを理解していると、表現できる範囲が一気に広がり、扱えるデータの幅も大きく広がります。特に初心者のうちは、「ただの文字列だしそんなに難しくないだろう」と思いがちですが、実際のアプリケーションやデータ処理では細かい文字の整形が重要であり、エスケープシーケンスの理解がプログラム全体の品質に直結します。改行やタブの挿入は画面表示の調整だけでなく、ログの整形や文章生成、テキストファイルの加工などあらゆる場面で活躍する基本的な技術です。 また、エスケープシーケンスは単なる装飾ではなく、コードを誤解なく処理させるためにも不可欠です。文字列の中で " や ' を使いたいとき、そのまま書くと構文エラーになってしまうケースもあります。その際に \" や \' を使えば、文字列を壊さずに必要な記号を表示できます。さらに、バックスラッシュはエスケープシーケンスそのものに使われる記号であるため、\\ と二重にして扱うという独特のルールもあります。一見複雑に見えるものの、仕組みを一度理解してしまえばとても論理的であり、Pythonの文字列処理の柔軟さを実感できるポイントでもあります。 エスケープシーケンスをより深く理解することで、raw文字列(r"..."の形)も効果的に扱えるようになり、特にWindowsのファイルパスや正規表現など、バックスラッシュを大量に使うコードでは、raw文字列が欠かせない存在になります。エスケープを意識せずに書けるため、読み間違いや記述のミスを防ぎやすく、コードの見通しも良くなります。また、自分以外の人が読む場合にも理解しやすいコードになるため、チーム開発でも非常に重宝されます。 Pythonで文字列を扱うとき、ただ文字が並んでいるだけでなく、そこにはさまざまな意味を持つ記号や制御文字が入り込んでいます。エスケープシーケンスを理解することは、文字列の内部で「どう表現され、どう処理されるのか」を知ることにつながり、より精密で高品質なプログラムを書くための基礎力になります。特に、テキストデータを使った処理やログの生成、ユーザーの入力結果の整形、文章の自動生成など、現代のプログラミングでは文字列が主役になる場面は非常に多く、エスケープシーケンスの知識は必須ともいえる大切な内容です。

サンプルコード:複数のエスケープシーケンスを使った文章整形


profile = "名前:\t山田太郎\n年齢:\t20歳\n趣味:\t\"Python\"の勉強\nフォルダ:\tC:\\Users\\Taro"
print(profile)

path_raw = r"C:\Users\Taro\Documents\Python"
print("raw文字列:", path_raw)

このサンプルコードでは、改行・タブ・引用符・バックスラッシュという複数のエスケープシーケンスを組み合わせて、情報が整理された見やすいテキストを作っています。raw文字列を併用することで、バックスラッシュを大量に含むパスも簡単に扱えるようになり、実用性の高い書き方を体験できます。文字列の扱いはPythonの基礎でありながら、とても深いテーマです。ひとつひとつ覚えていけば、自然と表現力の高いコードを書けるようになります。

先生と生徒の振り返り会話

生徒

「エスケープシーケンスって最初は難しそうと思っていましたが、意味がわかるとすごく便利ですね。特に改行やタブが簡単に入れられるのはすごく使いやすいです!」

先生

「そうですね。文章を整えたり、見やすく表示したり、ログを記録したりするときには欠かせません。さらに、引用符やバックスラッシュを正しく表示できるようになると、文字列の表現力が一気に上がります。」

生徒

「raw文字列も便利でした。ファイルパスをそのまま書けるのはすごく楽です。」

先生

「ファイルパスや正規表現を扱う場面では頻繁に使います。今回の内容を覚えておくと、Pythonでの文字列処理がよりスムーズになりますよ。」

生徒

「はい!これからは文字列をもっと自由に扱えるよう、エスケープシーケンスを意識して書いてみます!」

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

Python の文字列操作の記事一覧へ
新着記事
New1
PHP
PHPのforeachループを完全ガイド!初心者でもわかる配列・連想配列の処理
New2
Python
Pythonでリストを分割する方法(スライス / split() / itertools)
New3
Python
Pythonのクロージャー(Closure)とは?関数内関数とnonlocalの活用
New4
Python
Pythonのエラーメッセージの読み方!よくあるエラーと解決方法
人気記事
No.1
Java&Spring記事人気No1
PHP
PHPの認証機能を実装する方法!初心者でもわかるログイン・ログアウト処理の基本
No.2
Java&Spring記事人気No2
PHP
PHPでカウントダウンタイマーを作る方法!初心者向けにやさしく解説
No.3
Java&Spring記事人気No3
PHP
PHP の文字列のフォーマット(sprintf, printf)
No.4
Java&Spring記事人気No4
Python
Pythonで経過時間を計測する方法を完全解説!初心者でもわかる time.perf_counter() と time.sleep()
No.5
Java&Spring記事人気No5
Python
Pythonのリストを反転(逆順)する方法を解説!初心者向けにreverseメソッドとスライス表記[::−1]を丁寧に説明
No.6
Java&Spring記事人気No6
PHP
PHP のフォームデータの受け取り($_POST, $_GET)を完全解説!初心者向けガイド
No.7
Java&Spring記事人気No7
Python
Pythonのクロージャー(Closure)とは?関数内関数とnonlocalの活用
No.8
Java&Spring記事人気No8
PHP
PHPのセキュリティチェックリストを丁寧に解説!初心者でも理解できる安全対策ガイド