2

Python でタミル語を使用しようとしています。しかし、困難に遭遇しました。これが私のコードです

U=u'\u0B83'
print U

これはエラーをスローします、

UnicodeEncodeError: 'ascii' コーデックは位置 0 の文字 u'\u0b83' をエンコードできません: 序数が範囲内にありません(128)

asciiでのデフォルトエンコーディング。u0b83 はすでに Unicode であるため、タミル語で文字を出力する必要があります。

これもやってみた # - - コーディング: utf-8 - -. しかし、結果は同じです。

これをユニコードで設定するにはどうすればよいですか?

4

3 に答える 3

5

少なくとも Linux では、Python を起動する前に UTF-8 を使用するようにロケールを設定できます。

$ export LC_ALL=en_GB.utf8
$ python

もちろん、互換性のあるエンコーディングで任意のロケールを使用できます (ただし、UTF-8 をお勧めします)。

または、出力時に文字列をエンコードします。

>> print U.encode('utf-8')
ஃ
于 2012-04-29T10:13:30.433 に答える
2

これらの以前の質問とその回答を見てください。

Python、Unicode、および Windows コンソール

Python のデフォルトのエンコーディングを変更しますか?

于 2012-04-29T10:02:54.853 に答える
1

私が必要としたのはraw-unicode-escape.

私が使用すると、encode('raw-unicode-escape').decode('utf-8')すべてが完全に機能します。ここで答えを見つけました。Python Convert Unicode-Hex utf-8 strings to Unicode strings

于 2012-04-29T18:15:09.337 に答える