Все символы Unicode могут быть представлены в UTF-n
для всех определенных n
. Чего ты пытаешься достичь?
Если вы действительно хотите сделать что-то вроде печати всех допустимых символов в определенной кодировке, без необходимости знать, является ли кодировка «однобайтовой» или «многобайтовой» или фиксированный ее размер:
import unicodedata as ucd
import sys
def dump_encoding(enc):
for i in xrange(sys.maxunicode):
u = unichr(i)
try:
s = u.encode(enc)
except UnicodeEncodeError:
continue
try:
name = ucd.name(u)
except:
name = '?'
print "U+%06X %r %s" % (i, s, name)
if __name__ == "__main__":
dump_encoding(sys.argv[1])
Предложения: Попробуйте что-нибудь маленькое, например, cp1252
. Перенаправить стандартный вывод в файл.