二、了解简单数据类型

╄→尐↘猪︶ㄣ 提交于 2019-12-01 01:27:07

Python的简单数据类型

一、数值型数据的表示及运算

数学计算中用到的数据我们称之为数值型数据,在程序中也经常使用,Pytho中的数值型数据有三大类型:整型数据、实型数据和复数型数据。

1、整型(int型):

这里说的整型数据就是指那些不带小数点的数据。

1)整型数的表示方法

指不带小数点的整数,包括正数、负数和0,有十进制、二进制、八进制和十六进制四种表示方法,0b开头的是二进制数,以0O开头的是八进制,以0x开头的是十六进,不带标记的就是十进制数。如下所示,第一个数是八进制数,第二个数是十六进制数,第三个数是二进制数,第四个是十进制数。这里的字母大小写均可。

0O1076      -0x2ad0      0b10110110     -123

我们在Python解释器窗口的提示符号后面分别输入这几个数并回车,结果如下,系统自动将其转换为十进制数进行显示。用这种方法可以快速地将二进制、八进制、十六进制数转换为十进制数。参见下图

Python对整型数据的取值范围无限制,也就是说在程序中我们可以使用任意大的整数。

2)整型数的运算符号

整型数据可以使用的运算符号包括

+(加)、 - (减)、 *(乘)、 /(除)、//整除、%(求余数)、**(乘方)

其中除运算的结果一般不再是整数,比如在Python解释器窗口的提示符后面输入 9/4,回车后显示为2.25,但若输入9//4则结果显示为2,表示9除以4后的商是2(小数被丢弃). 若输入9%4,则显示为1,表示9除以4余数是1,若输入2**4则结果显示为16,表示2的4次方是16,参见下图。

别,乘方运算符的优先级最高,加减运算的优先级最低,而乘、除、整除、求余数四个运算符的优先级别相同。当不同优先级的运算符号出现在同一表达式中时,先完成优先级高的运算,当优先级相同的运算符出现在同一表达式中时,从左向右进行求值,比如有下列表达式:

2+4*6/2**3

运算结果为5.0,这里先求出2的三次方,结果为8,表达式化简为:2+4*6/8,因乘、除运算级别相同,需按从左至右的顺序求值,先作乘法,结果为:2+24/8,再作除法运算结果为3.0,表达式化为:2+3.0,最后作加法运算,结果为5.0

注意除运算后结果为一个带小数点的数。不管是否能除尽,若不想要小数点,则需用整除运算符号进行计算。

2、浮点型(float型):

我们将数学中用到的所有带有小数点的数均称作浮点型数据。

1)浮点数的表示方法

浮点数有两种表示方法,一种是普通表示法,一种是科学记数法。普通表示法如下:

-134.5098   2.4     -0.04

下面是科学计数法表示:

 123E-2  1.2234e2    -1.23788E-1     6.244E-3 

上面算式中,带有字母E的是科学记数表表示的浮点数,其中字母e后面的数代表指数,如12.34e-3表示12.34乘以10的负3次方。

在Python解释器窗口中输入上面的各数,则结果如下图所示。

2)浮点数的运算符

浮点数的运算符包括

+(加)、 - (减)、 *(乘)、 /(除)、//整除、%(求余数)、**(乘方)

其中的%运算符号对浮点数虽然可以运算,但实际很少使用。两个正的带小数点的数相除求余数实际是做减法,被除数反复减去除数,直到不够减为止,最后余下差即为结果。

二个带小数点的数进行整除,实际是做除法,商去掉小数部分后作为运算结果。

注意:计算机中的浮点数(即带小数点的数)在表示时是有误差的,这一点在编写程序时要需要注意,比如1.2有可能显示为1.19999999999或1.20000000003,所以在编程时应避免用浮点数进行精确的大小比较。

3、复数类型(complex):

复数的表示格式是:a+bj

其中a和b都是浮点数,比如1.2+0.7j,就是正确的复数表示。 复数在显示时系统会用括号括起来。

复数可以使用的运算符号如下:

+(加)、 - (减)、 *(乘)、 /(除)、**(乘方)

我们在Python解释器窗口的提示符号后面依次输入如下各行内容

(3+5j)**2

(30+5j)/5

30+5j+2+5j

运行结果如下图所示。

二、字符串型数据(str)

1、字符串型数据的表示方法

字符串型数据用来表示程序中用到的文本文字、字母、键盘上各种可显示的符号,比如姓名,电话,地址等信息均要使用字符串来表示。

字符串是用一对引号括起来的一系列文字符号,引号可以是单引号,双引号,但开始结束使用的引号要相同。比如:

'邮编300072'

"滨海市河北路34号"

字符串中可以含有引号,但要和字符串开始和结束时使用的最外层引号不同,比如:

   "'赵明', '男','汉'"

当字符串中含有多种引号时,可以使用连续的三个引号作为字符串的引号,比如

"""李丽丽  '女'  1960-9-9  "汉族"   滨海市大明路38号  邮编400090  """

当字符串较长要写在多行时,要使用三引号。

'''锄禾日当午,汗滴禾下土。

   谁知盘中餐,粒粒皆辛苦。 '''

在Python解释器窗口的提示符后面输入上面各字符串均可以得到正确的输出。参见下图。绿色文字是输入的内容,蓝色文字是输出的内容。其中的

代表字符中的换行标记。

我们有时需要在字符串中包含一些特殊字符,这时需要使用转义字符。转义字符是由反斜扛加一个字符来表示,参见下表:

下面举例来说明上面表中字符的使用方法

在解释器窗口输入下面各行命令:

输出结果如下图所示。

对上面输出结果的说明:

第一条语句中的 \n表示换行,字符串中含有这个符号,在输出时遇到\n就会产生一个换行。

第二条语句中的\t代表一个横向跳格,即光标位置跳到下一个水平制表位,所以输出时遇到这个符号,则光标跳过几个位置后再显示后面的内容。

第三条语句中的\"代表一个双引号,所以在输出的内容中该位置显示一个双引号。同理\'则代表一个单引号。

第四条语句中的\\代表一个反斜扛。所以在输出时显示为一个反斜扛。

第五条语句中的“\101”中的101是八进制,相当于十进制的65,正是大写字母A的ASCII码,所以在输出时“\101”显示为A,同理“\102”显示为B,符号“\x41”中的x41表示是十六进制数,十六进制的41相当于十进制的65,也就是字母A的ASCII码,所以也显示为字母A,同理,“\x42”显示为字母B。

注意上面表的最后一种表达方法中,反斜扛后面只能使用八进制数或以x开头的十六进制数来表示ASCII。

2、字符串型数据的运算符

能用于字符串运算的有四个运算符号,分别是“+”、“*”、“in”和“not in”,其中“+”用于连接字符串,“*”用于重复原有的字符串,比如:在Python解释器窗口的提示符后面分别输入下列内容,并按回车键,结果如下图所示。

"中国"+"人民解放军"

      "ABCD"*3

命令执行的结果一个是将字符串连接成一个字符串,一个是将字符串原有内容重复了三次。

运算符“in”用于检测一个字符串是否被包含在另一个字符串中,运算符“not in”用于检测一个字符串是否未被包含在另一个字符串中,我们在Pyhton解释器窗口中分别输入下面的两条语句:

"AB" in "LABEAL"

"AB" not in "LABEAL"

结果如下图所示。

第一条语句的输出结果为True,而第二条语句的输出结果为:False,参见上图。

True的含义是“真”,False的含义是“假”

第一条语句的含义是字符串"AB"被包含在字符串"LABEAL"中吗,如果显示为True,则表示左侧的字符串被包含在右侧的字符串中,如果显示为False则表示左侧的字符串未被包含在右侧的字符串中。

运算符“not in” 和运算符“in” 恰恰相反。

第二条语句的含义是字符串"AB"未被包含在字符串"LABEAL"中吗,如果显示为True,则表示左侧的字符串未被包含在右侧的字符串中,如果显示为False则表示左侧的字符串被包含在右侧的字符串中。

三、逻辑型数据(bool)

逻辑型数据是一种特殊的数据,只有两个值,True和Fales,这两个英文单词的意思是“是”和“否”也可翻译成“真”和“假”。

逻辑型数据的运算符号有 三个:分别是 “and”、"or"、"not",它们分别读作“与”、“或”、“非”。逻辑运算具有重要的实际意义,我们后面介绍,这里只记住其运算规则即可,逻辑运算的规则如下:

1)逻辑“与”运算(and)

“逻辑与”运算的规则用一句话来概括就是:有假则假,即参与“逻辑与”运算的两个逻辑值,只要其中有一个值是“False”则结果就是“False”。在Python解释器窗口提示符后输入下列各逻辑运算式,可得到其运算结果。如下图所示。

False and False

False and True

True and False

True and True

代表真和假的逻辑值输入时要小心,英文单词的第一个字母要大写,否则会出现错误。

2)逻辑“或”运算(or)

“逻辑或”运算的规则用一句话来概括就是:有真则真,即参与“逻辑或”运算的两个逻辑值,只要其中有一个值是“True”则结果就是“True”。在Python解释器窗口提示符后输入下列各逻辑运算式,可得到其运算结果。如下图所示。

False or False

False or True

True or  False

True or  True

3)逻辑“非”运算(not)

逻辑“非”运算的含义是对当前逻辑值的否定,因此运算时只需要一个逻辑值,运算结果和当前参与运算逻辑值相反。在Python解释器窗口提示符后输入下列逻辑非的运算式,可得到如下图所示的运算结果。

not False

not True

Python的逻辑运算中也可以使用数字,系统将数字0看作逻辑值False,将0之外的数看作True

例如输入:0 and 1

          1 or 0

          not 1

          not 0

程序的运行结果如下图所示。

注意:逻辑运算符的优先级是not 级别最高,or级别最低,比如下面的逻辑运算式:

False or not True and True

上式中应首先完成not True的运算,结果为 False,逻辑运算式简化为:

False or False and  True

然后完成and运算,False and True 结果为False,逻辑运算式简化为:False or False

 

最后完成False or False的运算。所以 最后结果为False。

 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!