Estou um pouco confuso sobre como a biblioteca padrão irá se comportar agora que Python (de 3,0) é baseado em unicode. Será módulos, tais como cordas CGI e uso urllib Unicode ou eles vão usar o novo tipo de 'bytes' e apenas fornecer dados codificados?
Será que tudo nas cordas biblioteca tratar padrão como unicode em Python 3.0?
Logicamente um monte de coisas como mensagens MIME-codificados mail, URLs, documentos XML, e assim por diante deve ser retornado como bytesnão strings. Isso pode causar alguma consternação como as bibliotecas começam a ser pregado para baixo para Python 3 e as pessoas descobrir que eles têm que ser mais conscientes dos bytes/ stringconversões do que eram para str/ unicode...
Uma das grandes coisas sobre esta questão (e Python em geral) é que você pode apenas mexer no interpretador! Python 3.0 RC1 está disponível para download .
>>> import urllib.request
>>> fh = urllib.request.urlopen('http://www.python.org/')
>>> print(type(fh.read(100)))
<class 'bytes'>
Haverá uma dança de dois passos aqui. Veja Python 3000 e Você .
Passo 1 é obter executado sob 3.0.
Passo 2 é repensar suas APIs para, talvez, fazer algo mais sensato.
O curso mais provável é que as bibliotecas irá mudar para strings unicode para permanecer mais compatível possível com a forma como eles usaram para trabalhar.
Então, talvez, alguns vão mudar para bytes para implementar mais adequadamente os padrões RFC para os vários protocolos.













