1

長い文字列の16進コードポイント値があります。短いものについては、以下は問題ありません。

msg = unichr(0x062A) + unichr(0x0627) + unichr(0x0628)
print msg

ただし、unichrの代替API unicode()が存在するため、コードポイント文字列全体を渡す方法が必要だと思いました。今のところ私はそれをすることができませんでした。

ここで、完全な文字列を生成するには、上記の3つのような150の16進値(コードポイント)の文字列を入力する必要があります。私は次のようなものを手に入れたいと思っていました

msg = unicode('0x062A, 0x0627....')

後者は「msg」を使用する必要があります。それを印刷することは単なる例でした。何か案は?

4

3 に答える 3

2

あなたが何を求めているのかを正確に伝えるのは難しいです。お探しu'\u062A\u0627\u0628'ですか?\uエスケープを使用すると、Unicode 文字列のコード ポイントごとに個々の文字を入力できます。

于 2012-08-08T07:39:45.003 に答える
2

おそらく次のようなものです:

", ".join(unichr(u) for u in (0x062A, 0x0627, 0x0628))

結果:

u'\u062a, \u0627, \u0628'

編集:これはstr.join.

于 2012-08-08T07:40:16.853 に答える
0

あなたの例に従ってください:

>>> c = u'\u062A\u0627\u0628'
>>> print c
تاب
于 2012-08-08T07:41:16.110 に答える