Python数据类型 — 字符串(1)
除了数值,我们还常常需要对文字进行处理。本文将介绍Python用于文字处理的数据类型 — 字符串,并解释如何在计算机系统中实现文字符号的转换。
字符(character),可以简单理解成人类语言中的各个文字,比如英语中的字符就是单个的字母。而字符串(string),则是一串字符组成的序列。编程语言中的字符串,不同与人类的语言系统,需遵循另一套规则,使计算机能够识别和处理。
ASCII字符编码
字符的识别和处理,对于掌握语言的人类来说,可能是简单且直观的。但是,要让计算机理解人类的语言,甚至进行处理,并不是一件容易的事。如前文所述,计算机只能处理二进制的数据,若要使计算机能够处理字符,需要定义一套规则,实现字符与二进制数的相互转换,这即是字符的编码(character coding)。本文将主要介绍Python2.x版本中使用的ASCII码。
ASCII(American Standard Code for Information Interchange)是目前最通用的单字节编码系统,主要用来表示英文字符、制表符及一些特殊字符。每个ASCII字符占用1个字节(Byte),即8个二进制比特位(bit)。因此,ASCII 编码最多可以表示255(0x00—0xFF)个字符。其中,前128个最为常用,主要用来表示大小写英文字母、阿拉伯数字及一些用于格式控制的制表符,如下表所示:
而另128 个字符,被称为“扩展ASCII码”,一般用来带有音标的字母、拉丁字母以及一些特殊字符,具体内容可参见下表:
Python中的字符串类型
字符串(string)是Python中的另一种数据类型,一般通过一对单引号或双引号来创建该数据类型,示例如下:
或
Python中同时支持单引号及双引号创建字符串,可以选择你喜欢的方式去使用,在大部分情况下,两者没有什么区别。但是,在某些特殊情况下,两种定义方式会有不同的妙用,我们会在以后的文章中再做介绍,让大家体会Python灵活易用的特性。
Python不像C++、Java等语言,对于单个字符,有专门的字符类型。单个字符在Python中也是作为长度为1的字符串进行处理,比如'a'在Python中的数据类型,依然为str,即字符串。可按如下代码进行测试:
如果想要查看某个字符对应的ASCII码,该怎么办呢?我们可以通过调用函数ord()实现。ord()接收一个长度的字符串作为输入,返回对应字符的ASCII码的十进制数值。具体的调用示例如下:
大家可以换其他字符测试一下,看看打印出的值,是否与上面的ASCII码表一致。
少年创客帮∣学习•探索•实践
领取专属 10元无门槛券
私享最新 技术干货