I want to print some unicode characters but u'\u1000' up to u'\u1099'. This doesn't work:
for i in range(1000,1100):
s=unicode('u'+str(i))
print i,s
I want to print some unicode characters but u'\u1000' up to u'\u1099'. This doesn't work:
for i in range(1000,1100):
s=unicode('u'+str(i))
print i,s
Use unichr:
s = unichr(i)
From the documentation:
unichr(i)Return the Unicode string of one character whose Unicode code is the integer i. For example, unichr(97) returns the string u'a'.
Try the following:
for i in range(1000, 1100):
print i, unichr(i)
unichr is the function you are looking for - it takes a number and returns the Unicode character for that point.
for i in range(1000, 1100):
print i, unichr(i)
(Python 3) The following will give you the characters corresponding to an arbitrary unicode range
start_code, stop_code = '4E00', '9FFF' # (CJK Unified Ideographs)
start_idx, stop_idx = [int(code, 16) for code in (start_code, stop_code)] # from hexadecimal to unicode code point
characters = []
for unicode_idx in range(start_idx, stop_idx+1):
characters.append(chr(unicode_idx))
Use chr instead of unichr to avoid an error message.
for i in range(1000, 1100):
print i, chr(i)
One might appreciate this php-cli version:
It is using html entities and UTF8 decoding.
Recent version of XTERM and others terminals supports unicode chars pretty nicely :)
php -r 'for ($x = 0; $x < 255000; $x++) {echo html_entity_decode("&#".$x.";",ENT_NOQUOTES,"UTF-8");}'