最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中浮點(diǎn)數(shù)比較判斷!為什么不能用==(推薦)

 更新時(shí)間:2023年09月26日 09:26:59   作者:何雙新  
這篇文章主要介紹了python中浮點(diǎn)數(shù)比較判斷!為什么不能用==,本文給大家分享問題解決方法,需要的朋友可以參考下

問題:浮點(diǎn)數(shù)比較為什么不能用==來寫?

答:計(jì)算機(jī)里面的數(shù)字是由二進(jìn)制保存的,在計(jì)算機(jī)內(nèi)部有些數(shù)字不能準(zhǔn)確的保存,于是就保存了一個(gè)最靠近的數(shù)字。

計(jì)算機(jī)表示浮點(diǎn)數(shù)(float或double類型)都有一個(gè)精度限制,對(duì)于超出了精度限制的浮點(diǎn)數(shù),計(jì)算機(jī)會(huì)把它們的精度之外的小數(shù)部分截?cái)唷?/p>

因此比較兩個(gè)float是否相等,不能僅僅依靠==來判斷,而是當(dāng)他們的兩者的差值小于一個(gè)我們可以容忍的小值時(shí),就可以認(rèn)為它們相等。

解決辦法:

1、在python3.5之前,可以通過計(jì)算兩個(gè)浮點(diǎn)數(shù)之差來判斷兩個(gè)浮點(diǎn)數(shù)是否相等:

  例子1: abs(f1 - f2) <= allowed_error   可接受的誤差

或:

def isclose(a, b, rel_tol=1e-09, abs_tol=0.0):
    return abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)

2、python 3.5之后,PEP485提案中給出了解決方案。math模塊新增一個(gè)isclose函數(shù)用來判斷兩個(gè)浮點(diǎn)數(shù)的值是否接近或相等   例子2:

  • 源碼:
 isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
  • 參數(shù):
  • a,b:兩個(gè)需要比較的浮點(diǎn)數(shù);
  • rel_tol: 相對(duì)于輸入值的大小,被認(rèn)為是“接近”的最大差異;
  • abs_tol: 無論輸入值的大小,被認(rèn)為“接近”的最大差異
  • 本質(zhì)算法
<strong><code>    abs(a-b) <= max(rel_tol * max(abs(a), abs(b)), abs_tol)</code></strong>
import math
print(math.isclose(2.1,2.2,rel_tol=0.1))
# 結(jié)果:True
# 同理abs_tol也可以自定義

到此這篇關(guān)于python中浮點(diǎn)數(shù)比較判斷!為什么不能用==的文章就介紹到這了,更多相關(guān)python浮點(diǎn)數(shù)比較內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 在指定范圍內(nèi)隨機(jī)生成不重復(fù)的n個(gè)數(shù)實(shí)例

    python 在指定范圍內(nèi)隨機(jī)生成不重復(fù)的n個(gè)數(shù)實(shí)例

    今天小編就為大家分享一篇python 在指定范圍內(nèi)隨機(jī)生成不重復(fù)的n個(gè)數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python利用xlwings實(shí)現(xiàn)考勤表制作

    Python利用xlwings實(shí)現(xiàn)考勤表制作

    這篇文章主要為大家詳細(xì)介紹了Python如何利用xlwings庫操作excel實(shí)現(xiàn)考勤表的制作,文中的實(shí)現(xiàn)步驟講解詳細(xì),感興趣的可以嘗試一下
    2023-04-04
  • python根據(jù)路徑導(dǎo)入模塊的方法

    python根據(jù)路徑導(dǎo)入模塊的方法

    這篇文章主要介紹了python根據(jù)路徑導(dǎo)入模塊的方法,分析了傳統(tǒng)方法與改進(jìn)方法,具有一定的實(shí)用價(jià)值,需要的朋友可以參考下
    2014-09-09
  • Python實(shí)現(xiàn)的石頭剪子布代碼分享

    Python實(shí)現(xiàn)的石頭剪子布代碼分享

    這篇文章主要介紹了Python實(shí)現(xiàn)的石頭剪子布代碼分享,本文和另一篇JavaScript實(shí)現(xiàn)的石頭剪刀布游戲源碼是姐妹篇,需要的朋友可以參考下
    2014-08-08
  • 正則化DropPath/drop_path用法示例(Python實(shí)現(xiàn))

    正則化DropPath/drop_path用法示例(Python實(shí)現(xiàn))

    DropPath 類似于Dropout,不同的是 Drop將深度學(xué)習(xí)模型中的多分支結(jié)構(gòu)隨機(jī)"失效",而Dropout是對(duì)神經(jīng)元隨機(jī)"失效"這篇文章主要給大家介紹了關(guān)于正則化DropPath/drop_path用法的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • Pycharm安裝jieba庫全過程

    Pycharm安裝jieba庫全過程

    文章主要介紹了在Pycharm中安裝jieba庫的方法,包括打開Pycharm設(shè)置、選擇項(xiàng)目解釋器、添加并搜索安裝jieba庫
    2026-04-04
  • python glom模塊的使用簡(jiǎn)介

    python glom模塊的使用簡(jiǎn)介

    這篇文章主要介紹了python glom模塊的使用簡(jiǎn)介,幫助大家更好的利用python處理數(shù)據(jù),感興趣的朋友可以了解下
    2021-04-04
  • Python+PuLP實(shí)現(xiàn)線性規(guī)劃的求解

    Python+PuLP實(shí)現(xiàn)線性規(guī)劃的求解

    線性規(guī)劃(Linear?programming),在線性等式或不等式約束條件下求解線性目標(biāo)函數(shù)的極值問題,常用于解決資源分配、生產(chǎn)調(diào)度和混合問題。本文將利用PuLP實(shí)現(xiàn)線性規(guī)劃的求解,需要的可以參考一下
    2022-04-04
  • scrapy爬蟲實(shí)例分享

    scrapy爬蟲實(shí)例分享

    這篇文章主要介紹了scrapy爬蟲實(shí)例分享,分享了四則Python爬蟲實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2017-12-12
  • 詳解Django解決ajax跨域訪問問題

    詳解Django解決ajax跨域訪問問題

    這篇文章主要介紹了詳解Django解決ajax跨域訪問問題,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08

最新評(píng)論

沙雅县| 东莞市| 蕉岭县| 竹北市| 共和县| 青州市| 沅江市| 固始县| 平阴县| 兴国县| 拜泉县| 威海市| 博白县| 黔西| 新巴尔虎左旗| 阜城县| 中宁县| 公安县| 兴和县| 旬阳县| 桐柏县| 新民市| 林芝县| 三门县| 和硕县| 交口县| 雅江县| 丹东市| 潮州市| 新晃| 荔波县| 新余市| 武山县| 尖扎县| 潍坊市| 岑巩县| 丰台区| 浦东新区| 静宁县| 涞源县| 灌云县|