标准库中的所有内容都会将字符串视为Python 3.0中的unicode吗?

hac*_*ama 11 python string unicode cgi python-3.x

我对Python(从3.0)基于unicode的标准库的行为方式感到有些困惑.诸如CGI和urllib之类的模块是否会使用unicode字符串,还是会使用新的"字节"类型并只提供编码数据?

pdc*_*pdc 11

逻辑上,诸如MIME编码的邮件消息,URL,XML文档等许多内容应该作为bytes非字符串返回.这可能会引起一些惊愕,因为图书馆开始被固定在Python 3中,人们发现他们必须更多地了解bytes/ string转换,而不是str/ unicode...


cdl*_*ary 6

关于这个问题(以及一般的Python)的一个好处是你可以在解释器中乱七八糟!Python 3.0 rc1目前可供下载.

>>> import urllib.request
>>> fh = urllib.request.urlopen('http://www.python.org/')
>>> print(type(fh.read(100)))
<class 'bytes'>
Run Code Online (Sandbox Code Playgroud)