営業時間:平日9:00~17:00

プログラミング

Python基礎編:エスケープシーケンス

saori
Python基礎編:エスケープシーケンス

プログラミング言語では、たくさんの記号を用いることが多いですよね。記号の1つ1つには意味があり、コンピュータはその記号に合わせた動きをしてくれます。

しかし、そんな記号も文字列の中で使いたいときもありますよね。そんな時、コンピュータはちゃんと文字列として認識してくれるのでしょうか。

今回はそんな記号に関する、「エスケープシーケンス」について紹介します。

エスケープシーケンスとは

エスケープシーケンとは、プログラミング用語の1つで、通常の文字では表せない、改行やスペースなどを特殊な記号によって表すことができるもののことを指します。

例えば、The word “bookstore” is a compound consisted of “book” and “store.”(「本屋」という単語は、「本」と「お店」という単語でできています。)という英文をprint関数で表示しようとするとエラーになってしまいます。

Pythonでは、文字列をダブルクォーテーションかシングルクォーテーションで囲んで表示させるため、この例文では、どこからどこまでが文字列なのか、コンピュータが理解できなかったのでしょう。

このようにエスケープシーケンスを用いなければ、自分が表示したいように文字列が表示できなくなってしまうのです。では、エスケープシーケンスで、「”」を表示できるようにしてみましょう。

この場合は、「”」の前に「¥」を付けて、「¥”」と書いてみましょう。

“The word ¥”bookstore¥” is a compound consisted of ¥”book¥” and¥ “store¥”.”

どうでしょうか。少し読みづらくはなりましたが、エラーにならずにちゃんと出力されました。これがエスケープシーケンスです。この他にもエスケープシーケンスを使って表示できる記号がたくさんあるので紹介します。

エスケープシーケンス一覧

下記が主に使われるエスケープシーケンスです。

  • ¥b … バックスペース
  • ¥f … 改ページ
  • ¥n … 改行
  • ¥r … 復改
  • ¥t … 水平タブ
  • ¥v … 垂直タブ
  • ¥¥ … バックスラッシュ(\)
  • ¥’ … シングルクォーテーション
  • ¥” … ダブルクォーテーション

よく使われる主なエスケープシーケンスについて例を見ながら詳しく学習していきましょう。

¥n … 改行

1文の文字列の中のどこかで改行を入れたいときに使用します。Macでは「\n」と入力すると改行できます。

¥¥ … バックスラッシュ(\)

フォルダの場所などでパスを指定するときに使われる「¥」ですが、そのまま「¥」と入力るすと表示されそうですよね。しかし、pythonでは「¥」は、継続文字のため、行末に「¥」がついていると、コード上では改行されていても、実行されるときには、その改行は無視されるということが起こります。また、パスの中に、「¥」のあと、「n」「b」「f」がつく場合には、「¥」が表示されず、エスケープシーケンスの挙動を取ることになってしまうため、思ったような出力ができなくなってしまします。

そこで、バックスラッシュを表示させる場合には、「¥¥」と入力すると、表示させることができます。Macでは「\\」で表示できます。

¥’ … シングルクォーテーション

「It’s」や「That’s」など、英語を書くときによく使われる「’」ですが、pythonでは、文字列の範囲を指定するために使われています。

例えば「’Hello World’」などですね。しかし、「It’s」のように途中で「’」が入ってきてしまうと、コンピュータが範囲が分からず、エラーを起こしてしまいます。

そこで、「¥’」と入力することで、実行時にエラーを起こさずに表示することができます。Macでは「\’」と入力するとできます。

¥” … ダブルクォーテーション

初めの例に挙げた通り、英文を表示するときなどに、「”」は使われることが多いですよね。その時は、「¥”」で実行時に表示することができます。Macでは「\”」でできます。

エスケープシーケンスはどうでしたか。簡単に覚えられそうですよね。プログラミング言語は1つの記号によって、行われる動作が変わってくるので間違えると、自分が思ってもいない行動に出るので、気を付けましょう。

あなたにオススメの記事

Python基礎編:for文を使っておみくじを作ろう

Python基礎編:for文を使っておみくじを作ろう

6月5日は人間型ロボットPepper(ペッパー)の誕生日

6月5日は人間型ロボットPepper(ペッパー)の誕生日

EOS Kiss X10を使ってカメラ初心者が撮影してみた【食べ物編】

EOS Kiss X10を使ってカメラ初心者が撮影してみた【食べ物編】

中央区隅田川沿いでマニュアル撮影した夜景写真をシャッタースピード別に紹介

中央区隅田川沿いでマニュアル撮影した夜景写真をシャッタースピード別に紹介

阿佐ヶ谷七夕祭り はりぼて編

阿佐ヶ谷七夕祭り【はりぼて編】

iPadはレンタルしてお得に使おう

iPadはレンタルしてお得に使おう

下地島空港から飛び立った飛行機からの眺め

【宮古島】下地島空港から飛び立った飛行機からの眺め

平成の携帯電話の歴史まとめ(2000年~)

6月14日発売予定キングダムのウェアラブルペン「INF10(インフォ)」

6月14日発売予定キングダムのウェアラブルペン「INF10(インフォ)」

アシバ祭出店の沖縄料理

アシバ祭出店の沖縄料理

Apple Watchの超便利な機能「計算機」で割り勘しよう

Apple Watchの超便利な機能「計算機」で割り勘しよう

インスタ映えにMacBookをレンタル

第37回江東区民まつり亀戸地区夏祭り大会:イベント・出店編

第37回江東区民まつり亀戸地区夏祭り大会:イベント・出店編

Python基礎編:タプルの書き方と出力、リストとの違い

Python基礎編:タプルの書き方と出力、リストとの違い

Python基礎編:リストの書き方とルール、予約語と組み込み関数

SPONSOR