字符串中存在一个编码问题。
因为计算机只能处理数字,如果要处理文本,就必须要把文本转换为数字才能处理。最早的计算机在设计时采用8个比特作为一个字节,所以一个字节能表示的最大整数为255。0-255被用来表示大小写英文字母、数字和一些符号,这个编码表成为ASCII编码。
如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突。所以,中国制定了GB2312编码,用来把中文编进去。
类似的韩文和日文也存在这样的问题,为了统一所有的文字编码,Unicode应运而生。Unicode把所有的语言都统一到一套编码里,这样就不会出现乱码的问题了。
Unicode表示的字符串用u'...'表示,比如:
print u ‘中文’
就可以输出 中文 二字。
具体示例如下代码所示。
# -*- coding: utf-8 -*-
print u'''床前明月光,
疑是地上霜。
举头望明月,
低头思故乡。
'''
运行结果如下: