Python的基础数据类型
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。 学习编程,认识不同编程中的数据类型是必要的,在Python中,能够直接处理的数据类型有以下几种:
1、整数:
整数和我们生活中定义的整数是一个概念,例如:1,2,3,10,100,1000,-1000 等等,都是整数,Python可以处理任意大小的整数。
对于整数,除了生活中常用的十进制以外,计算机由于使用二进制,所以,在计算机中也常用二进制或者十六进制表示整数。相比十进制数,在Python中使用以下方式表示二进制数和十六进制数。
二进制数只使用数字0、1表示,在Python中,二进制整数使用前缀0b表示,比如:0b0110,0b1100。
十六进制数除了0~9十个数字以外,还使用a、b、c、d、e、f,在Python中,十六进制使用前缀0x,比如:0x12ef,0xde2431af。
十进制数、二进制数和十六进制数之间是可以相互转换的,如果感兴趣的同学,可以学习《编程必备基础知识》了解更多转换的细节。
2、浮点数:
浮点数对应我们生活的是小数,例如:0.1,0.5, 12.34, 3.1415926等,都是浮点数。
为什么小数在计算机领域被称为浮点数呢?这是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的(浮动的),比如,1.23x109和12.3x108是相等的,因此称为浮点数。
浮点数可以用数学写法,如1.23,3.14,-9.01。但是对于很大或很小的浮点数,就必须用科学计数法表示,在Python中,把10用e替代,比如:1.23x10^9就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,同学可以自行举出更多的例子。
这里有必要提醒一点就是,整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差,如何检验,可以在Python终端中输入以下内容0.1 + 0.2,看看可以得到你期望的结果0.3吗?真实结果可能让你失望了。
3、字符串:
字符串对应生活中的就是非数字类型的内容,比如一个句子,一段话,在Python中就是字符串,在Python中,字符串是以’‘或""括起来的任意文本,比如’abc’,“xyz"等等。请注意,’'或”"本身只是一种表示方式,不是字符串的一部分,因此,字符串’abc’只有a,b,c这3个字符。
比如之前练习过的第一个Python程序:print(‘Hello World’),其中的Hello World就是字符串。
4、布尔值:
布尔值对应于生活中的就是对和错,在计算机的世界里,大部分判断都是非错则对的,布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(请注意大小写,不需要使用字符串符号括起来),也可以通过布尔运算计算出来。
布尔值可以用and、or和not运算(注意and,or,not都是Python语言本身的关键字)。
and运算是与运算,只有所有都为 True,and运算结果才是 True。
or运算是或运算,只要其中有一个为 True,or 运算结果就是 True。
not运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。
5、空值:
空值是Python里一个特殊的值,用None表示。
注意,None和0是不一样的,None不能理解为0,因为0是有意义的,比如我有0个苹果表示我没有苹果,0表达的是数值0的意思,而不能表示为我有None个苹果,None是一个特殊的空值。
此外,Python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型,我们后面会展开介绍。
例子:
3.1415926----浮点值 ‘Learn Python in imooc.’----字符串 100----整数值 0b1101----整数值
|