数字类型
1 数字类型的表示方法
表示数字或数值的数据类型称为数字类型。Python 内置的数字类型有整型(int)、浮点型(float)、复数类型( complex),它们分别对应数学中的整数、小数和复数,此外,还有一种比较特殊的整型——布尔类型(bool)。下面针对Python中的这4种数字类型分别进行讲解。
1.整型
类似-2、-1.0、1. 2这样的数据称为整型数据(简称整数)。在Python中可以使用4种进制表示整型,分别为二进制(以“0B”或“0b” 开头)、八进制(以“0o”或“00”开头)十进制表示整型,分别为二进制(以“0B” 或“0b”开头)、八进制(以“0o”或“00”开头)、十进制(默认表示方式)和十六进制(以“0x” 或“0X” 开头)。例如,使用二进制、八进制和十六进制表示十进制的整数10的示例代码具体如下:
0b1010 #二进制
0012 #八进制
0xA #十六进制
2.浮点型
类似1.1. 0.5、-1.4、3.12e2这样的数据被称为浮点型数据。浮点型数据用于保存带有小数点的数值,Python 的浮点数一般以十进制形式表示,对于较大或较小的浮点数,可以使用科学计数法表示。例如:
num_one = 3.14 # 十进制形式表示
num_two = 2e2 # 科学计数法表示(2*102,即200,e表示底数10)
num_third = 2e-2 # 科学计数法表示(2*10-2, 即0.02,e表示底数10)
3.复数类型
类似3+2j、3.1+4.9j、-2.3-1.9j 这样的数据被称为复数,Python 中的复数有以下3个特点:
(1)复数由实部和虚部构成,其一般形式为real+imagj。
(2)实部real和虚部的imag都是浮点型。
(3)虚部必须有后缀j或J。
在Python中有两种创建复数的方式:一种是按照复数的一般形式直接创建;另一种是通过内置函数complex)创建。例如:
num_one = 3 + 2j # 按照复数格式使用赋值运算符直接创建
num_two = complex(3, 2) # 使用内置函数complex ()函数创建
4.布尔类型
Python中的布尔类型( bool)只有两个取值: True和False。实际上布尔类型是一种特殊的整型,其中True对应的整数为1,False对应的整数为0。Python中的任何对象都可以转换为布尔类型,若要进行转换,符合以下条件的数据都会被转换为False。
(1)None;
(2)任何为0的数字类型,如0、0.0、0j;
(3)任何空序列,如’’’’、()、[];
(4)任何空字典,如{};
(5)用户定义的类实例,如类中定义了__bool__()或者__len__()。
除以,上对象外,其他的对象都会被转换为True。
可以使用bool()函数检测对象的布尔值。例如:
>>> bool(None)
False
>>> bool(0)
False
>>> bool([])
False
>>> bool(2)
True
2 技能训练1
上机练习1
练 习 根据身高体重计算BMI指数
需求说明
BMI指数即身体质量指数,是目前国际常用的衡量人体胖瘦程度以及是否健康的一个标准。
BMI指数计算公式如下:
体质指数(BMI)=体重(kg) ÷ (身高2)(m)
编写程序,实现根据输人的身高体重计算BMI值的功能。
【参考代码】 根据身高体重计算BMI指数.py
height = float(input('请输入您的身高(m):'))
weight = float(input('请输入您的体重(kg):'))
BMI = weight / (height * height)
print('您的BMI值为:',BMI)
3 类型转换函数
Python内置了一系列可实现强制类型转换的函数,保证用户在有需求的情况下,将目标数据转换为指定的类型。数字间进行转换的函数有int()、float()、str()关于这些丽数的功能说明如表1所示。
表1 类型转换函数的功能说明
函数 | 说明 |
---|---|
int() | 将浮点型、布尔类型和符合数值类型规范的字符串转换为整型 |
float() | 将整型和符合数值类型规范的字符串转换为浮点型 |
str() | 将数值类型转换为字符串 |
表1中介绍了类型转换函数的使用说明,下面,通过代码演示这些函数的使用方法,具体如下:
>>> int(3.6) #浮点型转整型,小数部分被截断
3
>>>float(3) #整型转浮点型
3.0
掌握以上函数后,想对两个符合数值类型格式的字符单数据进行算术运算就非常简单。例如,对两个符合数值类型格式的字符串进行求和运算,示例代码如下:
>>> str_01= "2"
>>> str_02= "5"
>>> sum=int(str_01)+int (str_02)
>>> print (sum)
7
以上代码将字符串str_01和str_02中存储的字符串转换为整型,并进行求和计算,打印计算结果“7”。
值得一提的是,在经过以上操作后,str_01和str_02仍为字符串,这是因为,使用int()转换的结果只是一个临时对象,并未被存储。如果通过type()函数测试str_01、str_02和sum的类型,获得的结果如下:
>>> type(str_01)
<type 'str'>
>>> type(str_02)
<type 'str'>
>>> type(sum)
<type 'int'>
在使用类型转换函数时有两点需要注意:
(1) int()函数、float()函数只能转换符合数字类型格式规范的字符串。
(2) 使用int()函数将浮点数转换为整数时,若有必要会发生截断(取整),而非四舍五人。
用户在使用类型转换函数时,必须考虑到以上两点,否则可能会因字符串不符合要求而导致在转换时产生错误,或因截断而产生预期之外的计算结果。
4 技能训练2
实例2:模拟超市收银抹零行为
在商店买东西时,可能会遇到这样的情况:挑选完商品进行结算时,商品的总价可能会带有0.1元或0.2元的零头,商店老板在收取现金时经常会将这些零头抹去。
本实例要求编写程序,模拟实现超市收银抹零行为。
total_money = 36.15 + 23.01 + 25.12 # 累加总计金额
total_money_str = str(total_money)
# print('商品总金额为:' + total_money_str + '元')
print('商品总金额为:', total_money, '元')
pay_money = int(total_money) # 进行抹零处理
pay_money_str = str(pay_money)
print('实收金额为:' + pay_money_str + '元')
超全面的测试IT技术课程,0元立即加入学习!有需要的朋友戳:
腾讯课堂测试技术学习地址
欢迎转载,但未经作者同意请保留此段声明,并在文章页面明显位置给出原文链接。
今天的文章简述python数字类型_python默认数字类型分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/81567.html