私は、フォームのデータを持っている: v = "\xc5\x84"
印刷UTF-8でエンコードされたバイト文字列
これは、UTF-8エンコードされた文字「N」のバイト表現です。
どのように印刷することができますか?<変数v?
v = "\\xc5\\x84"
(ダブルバックスラッシュ)
v = "\xc5\x84"
(単一のバックスラッシュ)VS
私は、元の変数v含まれる文字列でのpython 2.7.2
を使用しています
それ自体は有効なutf-8文字です。
私は、フォームのデータを持っている: v = "\xc5\x84"
印刷UTF-8でエンコードされたバイト文字列
これは、UTF-8エンコードされた文字「N」のバイト表現です。
どのように印刷することができますか?<変数v?
v = "\\xc5\\x84"
(ダブルバックスラッシュ)
v = "\xc5\x84"
(単一のバックスラッシュ)VS
私は、元の変数v含まれる文字列でのpython 2.7.2
を使用しています
それ自体は有効なutf-8文字です。
編集私のマシンでは、以下に示すように、出力は使用されるシェル/ Pythonに依存します。
Klausのコメントによれば、ここでは主要な俳優があなたのシステムのロケール設定になります。
>>> v = "\xc5\x84"
>>> print v #in pycrust shell python 2.6
Å„
>>>
>>> print (v) #in idle python 3.2
Å
>>>
マシンは、以下の設定があります。
>>> import locale
>>> locale.getlocale()
('es_ES', 'cp1252')
を独自にこの設定を、あなたは
>>> print v.decode('utf-8')
ń
>>>
オムであなたのキャラクターを取得するには、特別なことをする必要はありません。 ..それはちょうどprint v
ですか?
>>> v = "\xc5\x84"
>>> print v
ń
+1これは作業の可能性が最も高いです。 Windowsで使用されているシェルがコマンドプロンプトウィンドウ(別名 'cmd.exe')である場合、USや西ヨーロッパ(エンコーディングは' cp437'または 'cp850')のようなロケールでは動作しません。ヨーロッパのロケールは 'cp852 'をエンコードします。 –