Ответ 1
Используйте unichr:
s = unichr(i)
Из документации:
unichr(i)
Возвращает строку Unicode одного символа, код Юникода - целое число i. Например, unichr (97) возвращает строку u'a '.
Я хочу напечатать несколько символов Unicode, но u'\u1000'
до u'\u1099'
. Это не работает:
for i in range(1000,1100):
s=unicode('u'+str(i))
print i,s
Используйте unichr:
s = unichr(i)
Из документации:
unichr(i)
Возвращает строку Unicode одного символа, код Юникода - целое число i. Например, unichr (97) возвращает строку u'a '.
Вы хотите использовать unichr() встроенную функцию:
for i in range(1000,1100):
print i, unichr(i)
Обратите внимание, что в Python 3 достаточно chr().
Попробуйте следующее:
for i in range(1000, 1100):
print i, unichr(i)
unichr
- это функция, которую вы ищете - она принимает число и возвращает символ Unicode для этой точки.
for i in range(1000, 1100):
print i, unichr(i)
если вы хотите напечатать символы, соответствующие произвольному диапазону Юникода, вы можете использовать следующее (python 3)
unicode_range = ('4E00', '9FFF') # (CJK Unified Ideographs)
characters = []
for unicode_character in range(int(unicode_range[0], 16), int(unicode_range[1], 16)):
characters.append(chr(unicode_character))
Можно оценить эту версию php-cli :
Он использует HTML-сущности и UTF8-декодирование.
Последняя версия XTERM и других терминалов прекрасно поддерживает символы Юникода :)
php -r 'for ($x = 0; $x < 255000; $x++) {echo html_entity_decode("&#".$x.";",ENT_NOQUOTES,"UTF-8");}'