zoukankan      html  css  js  c++  java
  • python(数据精度处理)

    一、取整处理

    1.int() 向下取整 内置函数 

    1 n = 3.75
    2 print(int(n))
    >>> 3 3 n = 3.25 4 print(int(n))
    >>> 3

    2.round() 四舍五入 内置函数

    1 n = 3.75
    2 print(round(n))
    >>> 4 3 n = 3.25 4 print(round(n))
    >>> 3

    3. floor() 向下取整 math模块函数 

    floor的英文释义:地板。顾名思义也是向下取整

    复制代码
    1 import math
    2 n = 3.75
    3 print(math.floor(n))
    >>> 3 4 n = 3.25 5 print(math.floor(n))
    >>> 3
    复制代码

    4.ceil()向上取整 math模块函数

    ceil的英文释义:天花板。

    复制代码
    1 import math
    2 n = 3.75
    3 print(math.ceil(n))
    >>> 4 4 n = 3.25 5 print(math.ceil(n))
    >>> 4
    复制代码

    5.modf() 分别取整数部分和小数部分 math模块函数

    该方法返回一个包含小数部分和整数部分的元组
    复制代码
    1 import math
    2 n = 3.75
    3 print(math.modf(n))
    >>> (0.75, 3.0) 4 n = 3.25 5 print(math.modf(n))
    >>> (0.25, 3.0) 6 n = 4.2 7 print(math.modf(n))
    (0.20000000000000018, 4.0)
    复制代码

    最后一个的输出,涉及到了另一个问题,即浮点数在计算机中的表示,在计算机中是无法精确的表示小数的,至少目前的计算机做不到这一点。上例中最后的输出结果只是 0.2 在计算中的近似表示。Python 和 C 一样, 采用 IEEE 754 规范来存储浮点数。

    二、小数处理

    1.数据精度处理,保留小数位数

    (1)%f四舍五入方法 ---> "%.2f"

    • 这个方法是最常规的方法,方便实用
    a = 1.23456
    
    print ('%.4f' % a)
    print ('%.3f' % a)
    print ('%.2f' % a)
    
    ----->1.2346
    ----->1.235
    ----->1.23

    (2)不四舍五入

    • 方法1:使用序列中切片
    #coding=utf-8
    
    a = 12.345
    print (str(a).split('.')[0] + '.' + str(a).split('.')[1][:2])
    
    
    ----> '12.34'
    • 方法2:使用re正则匹配模块
    import re
    a = 12.345
    print (re.findall(r"d{1,}?.d{2}", str(a)))
    
    ---->['12.34']
  • 相关阅读:
    《代码大全2》读书笔记(三)
    软工第一次作业 进度记录三 简单的性能分析
    软工第一次作业 进度记录2
    WordPress发布文章前强制要求上传特色图像
    自定义php(NON-CORE WORDPRESS FILE) 引用 wordpress
    php 利用header 函数 下载各种文件
    apache php配置 虚拟目录 和 虚拟主机 多域名配置 原理解析
    JS 动态加载脚本 执行回调
    php 文件上传
    wordpress 插件 汉化
  • 原文地址:https://www.cnblogs.com/ZhengYing0813/p/11779791.html
Copyright © 2011-2022 走看看