(转)Unicode和Python的中文处理
——由于最近在做有关网页搜索的项目,涉及到一些编码方面的知识,小弟在网上偶然地发现了这么一篇文章,很易懂,不晦涩,为了方便自己也同时能方便大家,就转了过来,以作参考……
文章出处:http://blog.csdn.net/tingsking18/archive/2009/04/03/4033645.aspx
Unicode和Python的中文处理
在Python语言中,Uincode字符串处理一直是一个容易让人迷惑的问题。许多Python
爱好者经常因为搞不清Unicode、UTF-8还有其它许许多多的编码之间的区别而大伤脑筋。
笔者曾经也是这“伤脑筋一族”的成员,但经过半年多的努力,现在终于初步弄清楚其中
的一些关系。现将其整理如下,与各位同仁同享。同时也希望能借这篇短文抛砖引玉,吸
引更多真正的高手加入进来,共同完善我们的Python中文环境。
本文所提到的各种观点,一部分是查阅资料所得,还有一部分是笔者利用已有各种编
码数据用“猜测加验证”法得到。笔者自问才疏学浅,其中怕是藏有不少错误。各位看官
中不乏高手,如果有哪一位发现其中哪里有错,万望各位高人不吝赐教。笔者自己丢丑事
小,观点错误误了别人事大,因此各位大可不必顾忌笔者的面子问题。
第一节 文字编码和Unicode标准
要解释Unicode字符串就必须先从什么是Unicode编码开始说起。众所周知,文本显示
一直是计算机显示功能必须解决的基本问题。而计算机并不识字,它实际上是把文本看做
是一串“图片”,每张“图片”对应一个字符。每个计算机程序在显示文本时,必须借助
一个记录这个文字“图片”如何显示的“图片”集合,从中找到每一个字符对应“图片”
的数据,并依样画葫芦地把这个字“画”到屏幕上。这个“图片”就被称为“字模”,而
记录字模显示数据的集合就被称为“字符集”。为方便程序查找,每个字符的字模数据在
字符集中必须是有序排列的,而且每个字符都会被分配一个独一无二的ID,这个ID就是字
符的编码。而在计算机进行字符数据处理时,总是用这个编码代表它表示的那个字符。因
此,一个字符集就规定了一组计算机能够处理的字符数据。显然,不同国家指定的字符集
大小不同,相应的字符编码也不同。
在计算机历史上,最为广泛使用的标准化字符集当首推ASCII字符集。它
相关文档:
源代码下载:下载地址在这里
# 023
# Tuple(元素组)是不可变的列表
tuple1 = (1, 2, 3)
print tuple1
tuple2 = (tuple1, 4, 5, 6) # 一个元素组可以作为另外一个元素组的元素
print tuple2 # 并且能够在存储的时候保持原始的逻辑关系
for ele in tuple2:
print ele
print '\n'
for ele in tuple2[0]:
pr ......
源代码下载:下载地址在这里
A Byte Of Python
中关于继承有这样的文字:
Suppose you want to write a program which has to keep track of the
teachers and students in a college. They have some common
characteristics such as name, age and address. They also have specific
characteristics such as sala ......
python string和PyQt的QString的区别 以下在Python2.6和PyQt4.4.4 for
Python2,6环境下讨论: Python中有两种有关字符的类型:Python string object和Python Unicode
object。主要使用Python string object进行数据输入输出。 PyQt中与之相对应的字符有关类
python string和PyQt的QString的区别
以下在Python2.6和PyQt4 ......
Python Firewall Win32 (pyfw-win32)
pyfw-win32是一个可用Python脚本开发数据包过滤(防火墙)的模块。底层使用C语言编写的NDIS中间层驱动(NDIS IMD)提供支持,上层提供Python开发接口。可用Python脚本处理所有逻辑问题,而不必关心底层实现,达到快速、灵活开发的目的。
Google 项目托管:
http://code.google.com/p/py ......