<p>在python3.x中,<code>bytes</code>类型是新的。在python2.x中,作为兼容性填充程序,<code>bytes</code>是{<cd3>}的一个简单别名。在</p>
<p>请在此处阅读更多信息:<a href="https://docs.python.org/2/whatsnew/2.6.html#pep-3112-byte-literals">https://docs.python.org/2/whatsnew/2.6.html#pep-3112-byte-literals</a></p>
<blockquote>
<p>Python 3.0 adopts Unicode as the language’s fundamental string type
and denotes 8-bit literals differently, either as <code>b'string'</code> or using a
bytes constructor. For future compatibility, Python 2.6 adds bytes as
a synonym for the str type, and it also supports the <code>b''</code> notation.</p>
<p>The 2.6 str differs from 3.0’s bytes type in various ways; most
notably, the constructor is completely different. In 3.0, <code>bytes([65, 66, 67])</code> is 3 elements long, containing the bytes representing ABC; in
2.6, <code>bytes([65, 66, 67])</code> returns the 12-byte string representing the <code>str()</code> of the list.</p>
<p>The primary use of bytes in 2.6 will be to write tests of object type
such as <code>isinstance(x, bytes)</code>. This will help the 2to3 converter, which
can’t tell whether 2.x code intends strings to contain either
characters or 8-bit bytes; you can now use either bytes or str to
represent your intention exactly, and the resulting code will also be
correct in Python 3.0.</p>
</blockquote>