用python输出汉字字库

问题1:如果我们知道汉字编码范围是0x4E00到0x9FA5,怎么从十六进制的编码转成人类可读的字呢?

问题2:怎么把unicode编码的字写入文件呢,假设直接用open()的话,会提示UnicodeEncodeError: 'ascii' codec can't encode character u'u4e00' in position 0: ordinal not in range(128)


问题1的答案是用unichr,问题2的答案是用codes。

以下上代码。

import codecs
start,end = (0x4E00, 0x9FA5)
with codecs.open("chinese.txt", "wb", encoding="utf-8") as f:
    for codepoint in range(int(start),int(end)):
        f.write(unichr(codepoint))


打开chinese.txt文件,截图例如以下

原文地址:https://www.cnblogs.com/zfyouxi/p/4288022.html