Pythonの中には1文字では表せない文字も存在します。例えば改行です。このような特別な文字を表示させないために使われるのがエスケープシーケンスです。
| エスケープシーケンス | 意味 |
|---|---|
| ¥¥ | 「¥」文字そのもの |
| ¥' | シングルクオーテーション |
| ¥" | ダブルクオーテーション |
| ¥a | ベル |
| ¥b | バックスペース |
| ¥f | 改ページ |
| ¥r | キャリッジリターン |
| ¥n | 改行 |
| ¥t | 水平タブ |
| ¥v | 垂直タブ |
| ¥N{name} | Unicode データベース中で名前 name を持つ文字 |
| ¥uxxxx | 16ビットの16進数値xxxxを持つUnicode文字 |
| ¥Uxxxxxxxx | 32ビットの16進数値xxxxxxxxを持つUnicode文字 |
| ¥ooo | 8進数oooを持つASCII文字 |
| ¥xhh | 16進数hhを持つASCII文字 |
| ¥0 | NULL |
| ¥+(改行) | 文字列を途中で改行する |
しかし、もしここで ¥ 元の意味を表せたい場合はどうすればいいですか?例えば、
>>> dos = "c:\news"
>>> dos
'c:\news'
>>> print dos
c:
ews
上記のご覧の通り、Print で出力された文字列は問題があります。この時、"r" を利用しましょう。すると、
>>> dos = r"c:\news"
>>> print dos
c:\news
>>> print r"c:\news\python"
c:\news\python
>>>
"r"を使用すると、¥元の意味が正しく表示されます。
No comments:
Post a Comment