我在Django 教程中偶然发现了这段话:
Django 模型有一个默认的str () 方法,该方法调用unicode () 并将结果转换为 UTF-8 字节串。这意味着 unicode(p) 将返回一个 Unicode 字符串,而 str(p) 将返回一个普通字符串,字符编码为 UTF-8。
现在,我很困惑,因为 afaik Unicode 不是任何特定的表示形式,那么 Python 中的“Unicode 字符串”是什么?这是否意味着UCS-2?谷歌搜索出现了这个“Python Unicode 教程”,它大胆地指出
Unicode 是一种两字节编码,涵盖了世界上所有常见的书写系统。
这是完全错误的,或者是吗?我多次被字符集和编码问题弄糊涂了,但是在这里我很确定我正在阅读的文档很困惑。当它给我一个“Unicode 字符串”时,有人知道 Python 中发生了什么吗?