Chỉ tiêu đề cho biết.Cách tìm hiểu xem Python có được biên dịch bằng UCS-2 hay UCS-4 không?
$ ./configure --help | grep -i ucs
--enable-unicode[=ucs[24]]
Tìm kiếm các tài liệu chính thức, tôi thấy điều này:
sys.maxunicode: Một số nguyên đưa ra các điểm mã được hỗ trợ lớn nhất cho một nhân vật Unicode. Giá trị của số tùy thuộc vào tùy chọn cấu hình chỉ định xem Unicode ký tự được lưu trữ dưới dạng UCS-2 hoặc UCS-4 hay không.
Điều không rõ ràng ở đây là - (các) giá trị tương ứng với UCS-2 và UCS-4.
Mã được dự kiến sẽ hoạt động trên Python 2.6+.
Điều này không còn phổ biến nữa cho Python 3. Xem https://docs.python.org/3.4/c-api/unicode.html: 'Vì việc triển khai PEP 393 trong Python 3.3, các đối tượng Unicode sử dụng nội bộ một nhiều đại diện'. https://www.python.org/dev/peps/pep-0393/ –
@ Jan-PhilipGehrcke: 'deficient_unicode_build = (sys.maxunicode <0x10ffff)' hoạt động trên bất kỳ phiên bản Python nào (ngay cả khi biểu diễn bên trong linh hoạt được sử dụng ở đâu 'sys.maxunicode == 0x10ffff'). Các biểu diễn linh hoạt cho phép nhận được các kết quả chính xác như ucs4 đã làm trên các phiên bản trước đó trong khi sử dụng ít bộ nhớ hơn ucs4 trong một số trường hợp. – jfs