ユーニックス総合研究所

  • home
  • archives
  • python-wo-mojitoshite

Pythonで特殊文字を普通の文字として扱う方法

  • 作成日: 2023-08-14
  • 更新日: 2023-12-25
  • カテゴリ: Python

Pythonで特殊文字を普通の文字として扱う

Pythonで特殊文字を普通の文字として文字列で扱うにはどうしたらいいのでしょうか?
特殊文字自体を画面に出力したい時は、普通の文字として扱えないと不便です。
結論を言うとそういう時はバックスラッシュ(\)を使います。

この記事では特殊文字を普通の文字として扱う方法を解説していきます。

関連記事
Djangoでオブジェクトを一括作成・更新【bulk_create, bulk_update】
DjangoのModel.objects.filter()の使い方【QuerySet】
Djangoのmodelのcreate()の使い方【Python】
Django入門: ルートの設定 ~ 簡単な一行掲示板アプリを作る その4【Windows10】
NumPyのappend()の使い方: 配列の末尾に要素を追加
Numpyのarangeの使い方: 指定範囲の数列を生成する
Python3でYoutube Data APIを使ってキーワード検索する
PythonからC言語(my.puts)を呼び出して実行する

特殊文字の一覧

Pythonで使える特殊文字(エスケープ文字)は以下になります。

  • \a ... ベル
  • \b ... バックスペース
  • \f ... 改ページ
  • \n ... 改行
  • \r ... キャリッジリターン
  • \t ... 水平タブ
  • \v ... 垂直タブ
  • \ ... 「\」、バックスラッシュ
  • \" ... 「"」、ダブルクオーテーション
  • \' ... 「'」、シングルクオーテーション
  • \nnn ... 各nを8進数で指定。ASCIIコード
  • \xhh ... 各hを16進数で指定。ASCIIコード
  • \uhhhh ... 各hを16進数で指定。Unicode文字
  • \0 ... ナル文字

これらを文字列の中で使う場合は、上記のようにそのまま書いていきます。

s = '''  
\a \b \f \n \r \t \v  
\\ \" \' \777 \xff \uffff \0  
'''  

これらの特殊文字は上記のように文字列に含めると出力時に特殊文字として解釈されます。
たとえば「\n」の場合は改行になるので、段落ができます。

こういった特殊文字を普通の文字として、つまり特殊文字として出力するのではなく特殊文字の表記そのものを出力をしたいわけです。

特殊文字のエスケープ

特殊文字をエスケープするには特殊文字の前にバックスラッシュ(\)を置きます。
以下のようにです。

s = '''  
\\n is a newline.  
\\t is a tab.  
'''  
print(s)  

上記を実行すると以下のような結果になります。


\n is a newline.  
\t is a tab.  

ちゃんと「\n」や「\t」がエスケープされて出力されてますね。

おわりに

今回はPythonの特殊文字をエスケープする方法を解説しました。
なにか参考になれば幸いです。

🦝 < エスケープ!

🦝 < 脱出!