python3内建模块-float类
1、介绍
builtins.py文件中定义了float类,用于处理python中浮点数数据。
float也是python的基本数据类型之一。
2、类和初始化
class float(object):
def __init__(self, *args, **kwargs):
pass
3、初始化
(1)字面量初始化
- 支持十进制和科学计数法
# 十进制赋值
a = 3.14 # 3.14
a1 = 0.0 # 0.0
a2 = -3.14 # -3# .14
# 末尾为0,只有十分位上末尾为0时会保留,其他情况末尾为0都会被省略输出
a3 = 5.2000 # 5.2
# 不用过于纠结最大小数位数和末尾的值,一般注意两点:浮点数是不精确的,一般不使用过多的浮点数位数。其次其小数位数最大是15或16位。
a4 = 5.12345678912345678 # 5.123456789123456
a5 = 5.12345678912345578 # 5.1234567891234555
a6 = 5.12345678912345478 # 5.123456789123455
a7 = 102.12345678912345478 # 102.12345678912345
# 0. 可以省略0
a8 = .6
a9 = -.6
# 浮点数不支持其他进制
# b = 0x1f.1
# 科学计数法 aeb,表示a*10^b,a可以是整数或浮点数,b只能是整数
# c = 3e5 #300000.0
# c1 = .2e5 # 20000.0
# e后面不能是小数
# c1 = 2.2e2.2
(2)类初始化
- float类,可以对直接的数值转换,也可以是浮点数字面量进行解析。只能一个参数,不存在进制等情况
d = float(3.14)
d1 = float("1.1") #3.14
4、方法
(1)is_integer
- 判断浮点数是否为整数,即小数部分是否实质为0
print(float(3.14).is_integer()) # False
print(float(3.00).is_integer()) # True
(2)hex
- 返回str类型,表示浮点数的十六进制形式
print(d.hex()) # 0x1.91eb851eb851fp+1
(3)fromhex
- 返回float类型,参数是str类型,表示将十六进制的浮点数字符串解析为浮点数。一般是与hex方法搭配,互为逆操作
print(d.fromhex("0x1.91eb851eb851fp+1")) # 3.14