整数、浮点数与布尔值

  • 整数与浮点数

打开IDLE交互界面,输入一些简单的数学表达式,然后回车,你会得到:

>>> 1 + 1
2
>>> 5 - 3
2
>>> 2.5 * 2
5.0
>>> 6 / 3
2.0

我们看到这里面出现了两种Python数据类型,一种是不带小数部分的,例如“1”,称为整数(Integer),简写为int;另一种是带有小数的,例如“2.0”,称为浮点数(floating point),简写为float。

观察上面的算式,我们发现2.5乘以2,Python返回的结果是浮点数5.0而不是整数5,这是由于在Python中,整数与整数进行运算,结果是整数;运算中只要出现一个浮点数,那么结果就是浮点数。

我们还发现,6除以3,Python返回的结果是浮点数2.0而不是整数2,这是由于,整数相除结果不一定是整数,因此Python默认除法结果不论是否为整数,均返回浮点数。

Python还能进行其他运算,这里例举一些常用的:

乘方:

>>> 2 ** 3
8

相除取整数:

>>> 14 // 3
4

相除取余数:

>>> 14 % 3
2

除上述运算外,Python中还有一些内置函数可以作用于整数和浮点数。关于函数的运算原理、写法等,现在不理解没有关系,只需先知道有这些功能即可:

取绝对值函数——abs();只要在括号中填入一个整数或浮点数,就可以返回其绝对值:

>>> abs(-6)
6

取最大(最小)值——max()与min();只要在括号内填入需要比较的整数或浮点数,数之间用逗号隔开,即可返回其中的最大(最小)值:

>>> max(1, 2, 3.5)
3.5
>>> min(1, 2, 3, 4)
1

 

  • 布尔值

布尔值(Boolean values)也是Python数据类型中的一种,简写为bool,只有两个——True和False。这就很好理解了,上学的时候英语考试偶尔有这种题,判断如果语句成立,那么就返回True,反之则返回False。比如,我们在Python中可以用大于、小于号,大于等于、小于等于号比较两个数字:

>>> 1 <= 3
True
>>> 1 > 3
False

现在,我们来看一个特例:

>>> 3 = 3
SyntaxError: can't assign to literal

EXO Me?三不等于三?敲黑板,在Python中,“=”是一个赋值号(接下来会讲),如果要使用”等号“,请输入”==”;另外,我们也可以用”!=”表示“不等于”,例如:

>>> 1 + 1 == 6 - 4
True
>>> 1 + 1 != 6 - 4
False

我们还能用or(或)、and(且)和not(非)进行一些更加复杂的判断:

>>> 1 + 1 == 2 and 1 + 1 == 3
False
>>> 1 + 1 == 2 or 1 + 1 == 3
True
>>> not 1 + 1 == 3
True

判断依据高中都学过,列表如下:

pqp and qp or qnot p
truetruetruetruefalse
truefalsefalsetrue\
falsetruefalsetruetrue
falsefalsefalsefalse\

 


布尔值是英国数学家乔治布尔(George Boole)的重要贡献。这哥们虽然英年早逝(享年49),但成就非凡。他十几岁精通拉丁文,又自学法语、德语、意大利语;16岁当老师;21岁开学校……被誉为信息时代之爸爸…之父。如果你喜欢看福尔摩斯,那么他还是剧中詹姆斯·莫里亚蒂的创作灵感原型。后来,他的孙子Geoffrey Taylor FRS参与发明了世界上第一颗原子弹_(:з」∠)_就是这么酷炫。

 

  • 本节练习

用Python计算小明(9岁),小日(16岁),小月(11岁)三人的平均年龄;计算小月和小日年龄差的绝对值。

看答案

>>> (9 + 16 + 11) / 3
12.0
>>> abs(11 - 16)
5

酱哦

用布尔表达式表达:29.5,31和47这三个数中数值最小的数小于等于30

看答案

>>> min(29.5, 31, 47) <= 30
True

酱哦

 

如果还有什么问题或者发现了文章的错误,欢迎给我留言!邮箱可以随便乱写~

发表评论

邮箱地址不会被公开。 必填项已用*标注