LoginSignup
1
0

More than 5 years have passed since last update.

Jupyter Notebookでバックスラッシュを表示する

Posted at

Jupyter NotebookでPythonのプログラムを書くときに困るのは、バックスラッシュ(\)が表示されないことです。バックスラッシュは、エスケープシーケンスとしてよく使うのに、次のように"¥"が表示されてしまってはがっかりです。
image.png

そこで、Jupyter Notebookに個人用のcssを作成することで、バックスラッシュを表示できるようにしてみました。まず、テキストエディタで次のようなcssを作成します。

custom.css
.CodeMirror pre, .output pre {
  font-family: Arial,MS ゴシック;
}

このときfont-familyの1番はじめに、”arial”のような欧文フォント(日本語のひらがなや漢字が使えない)を指定します。次に、
C:\Users\(自身のアカウントのフォルダ).jupyter
のフォルダに”custom”というフォルダがなければ新規に作成します。そして、custom.cssというファイル名で保存します。つまり
C:\Users\(自身のアカウントのフォルダ).jupyter\ custom\custom.css
というファイルとして保存することになります。すると、次のとおりバックスラッシュが表示されます。

image.png

jupyter notebookを表示するcssは別にあり、customer.cssがあれば優先して適用されるだけなので、上手く行かなくても、このcssファイルを削除してしまえば問題ありません。

バックスラッシュはアスキーコードでは”0x5c94”が割り当てられています。
かつてコンピュータの性能が良くなかった頃は、1文字を7ビットで表現していました。7ビット128のコードの中で、文字だけではなく改行マークなどの制御記号も割り当てなければならないので、アルファベット、数字や特殊記号などで94文字しかコードを割り当てることができません。そこで、バックスラッシュ(0x5c94)などについては、各国の事情に応じて文字を割り当ててよいことになりました。日本では、「やはり¥マークは必要だよね」ということで、0x5c94にはバックスラッシュではなく、"¥"マークを割り当ててしまったため、このような問題が起きてします。
ちなみにエクセルでも適当なセルに”\”と入力し、フォントをarialなどに変更すると、バックスラッシュが表示されます。一方、ワードでは、"¥"と入力してその部分を欧文フォントに変更しても”¥”のままとなってしまいます。この場合、【ファイル】→【オプション】→【詳細設定】→【レイアウトオプションの適用先文字】→
【バックスラッシュを円記号()に変換する】のチェックを外すと、【レイアウトオプションの適用先】の文書だけはバックスラッシュを表示できるようになります。

image.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0