繁体   English   中英

Python 2.x字符串:Unicode与字节

[英]Python 2.x Strings: Unicode vs. Bytes

我使用的是非美国语言,有时还必须使用Python 2.x编写。 阅读这篇文章:Brett Cannon撰写的http://www.snarky.ca/why-python-3-exists让我想知道这是否意味着如果我使用的只是字符而不是字节的字符串,我应该在所有字符串之前加上u ,以避免在字节字符串和unicode字符串之间混淆的可能? 并且:这也适用于Jython吗?

最后一个问题: -*- coding: utf-8 -*-完全独立于上述内容,仅提供文件本身的编码-对吗?

是的,您想将文本保留在unicode对象中(Python 3中的str类型),并维护Unicode三明治(尽快解码传入的数据,推迟编码直到数据需要退出应用程序为止)。 请参阅Ned Batchelder的出色Unicode演示

这也适用于Jython,它只是Python语言的另一种实现。

PEP 263源代码编码声明告诉解释器在解码源代码中的字节时使用哪种编解码器。 它在定义具有非ASCII字节的Unicode文字时会有所帮助,但不会规定如何编码或解码除源代码以外的其他数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM