[英]How are Unicode objects represented in Python?
我一直在閱讀有關python Unicode編碼等的大量內容,我認為現在對它有一些了解。 最后一件事仍然存在。
這就是我的立場
在python 2.x中,str對象將字符串表示為字節,根據這些字節的編碼,我們可以得到不同的字符。 這是我所知道的簡化,但對於這個問題並不重要。
然而,我被告知的unicode對象將字符串表示為unicode代碼點,因此基本上是整數。 不再像以前那樣模糊地將字節解釋為它們的值。
我的問題是如何在python中引用這些Unicode代碼點/整數,它們只是4個字節的數字。 這是否意味着他們比str對手使用更多的空間。 並不是說我擔心這個空間,我只想了解。
在3.3之前的CPython中, unicode
對象中的文本數據被編碼為UCS-2或UCS-4(取決於編譯時選項)並存儲在char*
。 3.3根據字符串中的最高代碼點使用unicode
數據的變量表示 。 Jython和IronPython使用其本機類型進行unicode
存儲。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.