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