""" 自己写了个MyMath库,解决Math库精度不准确问题 (= =!!): MyFloor_2() 向下取整2位精度 MyFloor_4(a) 向下取整4位精度 MyCeil_2(a) 向上取整2位精度 MyCeil_4() 向上取整4位精度 MyRound_2() 四舍五入2位精度 """ # 向下取整2位 def MyFloor_2(a): a = str(a) list_a = list(a) local_point = list_a.index('.') float_num = list_a[local_point+1:] after_point_num = float_num[0:2] after_point_num = ''.join(after_point_num) before_point_num = list_a[:local_point] before_point_num = ''.join(before_point_num) NewNum = before_point_num+'.'+after_point_num NewNum = float(NewNum) print(NewNum) return NewNum # 向下取整4位 def MyFloor_4(a): a = str(a) list_a = list(a) local_point = list_a.index('.') float_num = list_a[local_point+1:] after_point_num = float_num[0:4] after_point_num = ''.join(after_point_num) before_point_num = list_a[:local_point] before_point_num = ''.join(before_point_num) NewNum = before_point_num+'.'+after_point_num NewNum = float(NewNum) print(NewNum) return NewNum # 向上取整2位 def MyCeil_2(a): a = str(a) list_a = list(a) local_point = list_a.index('.') float_num = list_a[local_point+1:] after_point_num = float_num[0:2] after_point_num = ''.join(after_point_num) before_point_num = list_a[:local_point] before_point_num = ''.join(before_point_num) NewNum = before_point_num+'.'+after_point_num if float_num[2] != '0': NewNum = float(NewNum)+0.01 print(NewNum) return NewNum else: NewNum = float(NewNum) print(NewNum) return NewNum # 向上取整4位 def MyCeil_4(a): a = str(a) list_a = list(a) local_point = list_a.index('.') float_num = list_a[local_point+1:] after_point_num = float_num[0:4] after_point_num = ''.join(after_point_num) before_point_num = list_a[:local_point] before_point_num = ''.join(before_point_num) NewNum = before_point_num+'.'+after_point_num if float_num[4] != '0': NewNum = float(NewNum)+0.0001 print(NewNum) return NewNum else: NewNum = float(NewNum) print(NewNum) return NewNum # 四舍五入2位 def MyRound_2(a): a = str(a) list_a = list(a) local_point = list_a.index('.') float_num = list_a[local_point+1:] after_point_num = float_num[0:2] after_point_num = ''.join(after_point_num) before_point_num = list_a[:local_point] before_point_num = ''.join(before_point_num) NewNum = before_point_num+'.'+after_point_num if int(float_num[2]) >= 5: NewNum = float(NewNum)+0.01 print(NewNum) return NewNum else: NewNum = float(NewNum) print(NewNum) return NewNum
MyMath库
最新推荐文章于 2021-10-18 15:23:17 发布