衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python小數數字對象Decimal

jf_78858299 ? 來源:梯閱線條 ? 作者:小梯子 ? 2023-03-10 10:04 ? 次閱讀

python的小數數字對象,類似于浮點數,只不過小數數字有固定的位數和小數點。

python小數數字是有固定精度的浮點值。

python小數數字對象的性能略微低于浮點數。

python小數數字需使用decimal模塊。

python的decimal.getcontext().prec可以設置小數精度。

1.1 python小數基礎知識

python浮點數缺乏精確性,因為存儲數值的空間有限。

python小數對象可以修正浮點數的精確性問題。

1.1.1 Decimal()

python不同小數位數的Decimal對象運算時,自動升級為小數位數最多的小數位。

用法

Decimal(str)

描述

生成小數字符串對應的Decimal對象。

入參

str:小數字符串

示例

>>> 0.1+0.1+0.1-0.3
5.551115123125783e-17
>>> print(0.1+0.1+0.1-0.3)
5.551115123125783e-17
>>> from decimal import Decimal
>>> Decimal('0.1')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
Decimal('0.0')
>>> Decimal('0.10')+Decimal('0.1')+Decimal('0.1')-Decimal('0.3')
Decimal('0.00')

1.2 設置全局精度

python通過上下文對象(decimal.getcontext().prec)設置小數的全局精度。

示例

>>> import decimal
>>> decimal.Decimal(1)/decimal.Decimal(7)
Decimal('0.1428571428571428571428571429')
>>> decimal.getcontext().prec = 4
>>> decimal.Decimal(1)/decimal.Decimal(7)
Decimal('0.1429')

1.3 臨時設置精度

python通過本地上下文管理器(decimal. localcontext ().prec)設置小數的臨時精度。語句執行完后,繼續使用初始精度。

示例

>>> import decimal
>>> decimal.Decimal('1.00')/decimal.Decimal('3.00')
Decimal('0.3333333333333333333333333333')
>>> with decimal.localcontext() as ctx:
...         ctx.prec = 2
...         decimal.Decimal('1.00')/decimal.Decimal('3.00')
...
... 
Decimal('0.33')
>>> decimal.Decimal('1.00')/decimal.Decimal('3.00')
Decimal('0.3333333333333333333333333333')
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 浮點數
    +關注

    關注

    0

    文章

    61

    瀏覽量

    15909
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85040
收藏 人收藏

    評論

    相關推薦

    Python的面向對象編程詳解

    一般編程可分為面向過程編程,和面向對象編程。Python的面向對象編程,與Java的面向對象很像。之所以需要面向對象編程,是為了更好地實現封
    發表于 09-04 16:35 ?594次閱讀
    <b class='flag-5'>Python</b>的面向<b class='flag-5'>對象</b>編程詳解

    VHDL 怎么定義整數數組和小數數組啊

    比如簡單的以為數組我想定義成(3,13,22,3,4,5)這種,怎么定義成二維(1,3,4;2,5,4)同上一維小數數組怎么定義,二維小數數組怎么定義樓主新手,發現給的一維和二維例程都是邏輯的0和1 ,非常苦惱
    發表于 05-14 16:24

    Python中常用的數據類型

    ~9223372036854775807。long(長整型)Python長整型沒有指定位寬,但是由于機器內存有限,使用長的長整數數值也不可能無限大。float(浮點型)浮點型也就是帶有小數點的數,其
    發表于 04-19 15:14

    3分鐘看懂Python面向對象

    Python雖然是解釋型語言,但從設計之初就已經是一門面向對象的語言,對于Python來說一切皆為對象。正因為如此,在Python中創建一個
    發表于 06-08 14:20

    總結:一文了解Python中的數字類型

    支持三種不同的數字類型,整數、浮點數和復數。 整數通常被稱為整型,數值為正或者負,不帶小數點。python 3的整型可以當做Long類型使用,所以python 3 沒有
    發表于 09-26 16:49

    詳談Python的數據模型和對象模型

    Python官方文檔說法是“Python數據模型”,大多數Python書籍作者說法是“Python對象模型”,它們是一個意思,表示“計算機編
    的頭像 發表于 02-10 15:59 ?2614次閱讀
    詳談<b class='flag-5'>Python</b>的數據模型和<b class='flag-5'>對象</b>模型

    python二八十六進制整數轉換

    python的整數數字可以用二、八、十六不同進制表示,它們可以和十進制相互轉換。python數字可以進行位操作。
    的頭像 發表于 03-10 09:59 ?1470次閱讀

    Python中的類和對象詳解

    Python 是一種面向對象的編程語言,它支持類和對象。類是一種用戶自定義的數據類型,用于定義對象的屬性和方法。對象是類的實例,它包含類的屬
    的頭像 發表于 04-20 16:53 ?1229次閱讀

    使用Teachable Machine和Python輕松進行對象檢測

    電子發燒友網站提供《使用Teachable Machine和Python輕松進行對象檢測.zip》資料免費下載
    發表于 06-27 09:26 ?0次下載
    使用Teachable Machine和<b class='flag-5'>Python</b>輕松進行<b class='flag-5'>對象</b>檢測

    python如何保留一位小數

    本文將詳細介紹Python中保留一位小數的方法。我們將探討浮點數的基本概念,并提供多種方法來實現精確的小數保留。無論是使用內置函數還是第三方庫,我們將詳細解釋它們的原理和用法。希望通過閱讀本文,您將
    的頭像 發表于 11-23 16:37 ?2137次閱讀

    mysql中decimal的用法

    MySQL中的DECIMAL是用于存儲精確數值的數據類型。DECIMAL可以存儲固定精度和小數位數的值。在MySQL中,DECIMAL數據類型有兩個參數:精度和
    的頭像 發表于 11-30 10:45 ?1155次閱讀

    decimal類型怎么插數

    DecimalPython中的一個內置模塊,用于處理浮點數操作,它提供了更高精度和更精確的結果。在Python中,我們可以使用Decimal類型來插入和處理
    的頭像 發表于 11-30 10:49 ?596次閱讀

    decimal類型怎么定義

    decimal類型是一種用于表示十進制數的數據類型。與浮點數類型不同,decimal類型提供了更高的精確度,對于需要精確計算的場景非常有用。在很多編程語言中,如C#、Java和Python,都支持
    的頭像 發表于 11-30 10:52 ?1658次閱讀

    數據庫中decimal是什么類型

    數據庫中decimal是一種用于存儲精確小數的數據類型。在數據庫中,decimal常用于存儲貨幣金額、科學計算和需要精確計算的場景。本文將詳盡、詳實、細致地探討decimal的定義、存
    的頭像 發表于 11-30 11:02 ?5851次閱讀

    數據庫decimal對應java什么類型

    、貨幣計算以及其他需要高精度計算的場景下, BigDecimal 是一個非常重要的數據類型。 在數據庫中, decimal 類型通常用于存儲具有固定精度和小數位數的數值。與其他基本的數值類型(如整型
    的頭像 發表于 11-30 11:06 ?3997次閱讀
    澳门百家乐小| A8百家乐官网赌场娱乐网规则 | 百家乐官网好不好玩| 铂金娱乐| 德州扑克在线| 龙岩棋牌乐| 易胜博棋牌| 宜春市| 利记百家乐官网现金网| 百家乐官网视频免费下载| 化德县| 安阳百家乐官网赌博| 广州百家乐官网筹码| 金银岛百家乐官网的玩法技巧和规则 | 大发888怎么注册| 视频百家乐官网游戏| 百家乐官网赌术大揭秘| 网上百家乐官网娱乐场开户注册 | 百家乐家居| 永利高a1娱乐城送彩金| 大发888东方鸿运娱乐| 金沙国际娱乐城| 太阳城娱乐网站| 百家乐官网全讯网娱乐城| 百家乐官网庄家必赢诀窍| 单机百家乐官网的玩法技巧和规则 | 百家乐官网赢钱公式冯耕| 百家乐官网最新缆| 真钱百家乐游戏大全| 新世纪百家乐的玩法技巧和规则| 大发888官网网址| 四房播播| 职业赌百家乐官网技巧| 至尊百家乐官网| 百家乐机器图片| 大发888娱乐城大发888达法8| 至尊百家乐| 百家乐官网明灯| 线上百家乐可靠吗| 大发888娱乐场大发888娱乐场| 百家乐官网投注助手|