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

python十進(jìn)制和二進(jìn)制的轉(zhuǎn)換方法(含浮點(diǎn)數(shù))

 更新時(shí)間:2018年07月07日 17:14:08   作者:kick-ass。Nuisance  
這篇文章主要介紹了python十進(jìn)制和二進(jìn)制的轉(zhuǎn)換方法(含浮點(diǎn)數(shù)),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

本文介紹了python十進(jìn)制和二進(jìn)制的轉(zhuǎn)換方法(含浮點(diǎn)數(shù)),分享給大家,也給自己留個(gè)筆記,具體如下:

我終于寫(xiě)完了 , 十進(jìn)制轉(zhuǎn)二進(jìn)制的小數(shù)部分卡了我將近一個(gè)小時(shí)

上代碼

#-*- coding: utf-8
from decimal import Decimal
def bTod(n, pre=4):
  '''
  把一個(gè)帶小數(shù)的二進(jìn)制數(shù)n轉(zhuǎn)換成十進(jìn)制
  小數(shù)點(diǎn)后面保留pre位小數(shù)
  '''
  string_number1 = str(n) #number1 表示二進(jìn)制數(shù),number2表示十進(jìn)制數(shù)
  decimal = 0 #小數(shù)部分化成二進(jìn)制后的值
  flag = False  
  for i in string_number1: #判斷是否含小數(shù)部分
    if i == '.':
      flag = True
      break
  if flag: #若二進(jìn)制數(shù)含有小數(shù)部分
    string_integer, string_decimal = string_number1.split('.') #分離整數(shù)部分和小數(shù)部分
    for i in range(len(string_decimal)):
      decimal += 2**(-i-1)*int(string_decimal[i]) #小數(shù)部分化成二進(jìn)制
    number2 = int(str(int(string_integer, 2))) + decimal
    return round(number2, pre)
  else: #若二進(jìn)制數(shù)只有整數(shù)部分
    return int(string_number1, 2)#若只有整數(shù)部分 直接一行代碼二進(jìn)制轉(zhuǎn)十進(jìn)制 python還是騷 

def dTob(n, pre=4):
  '''
  把一個(gè)帶小數(shù)的十進(jìn)制數(shù)n轉(zhuǎn)換成二進(jìn)制
  小數(shù)點(diǎn)后面保留pre位小數(shù)
  '''
  string_number1 = str(n) #number1 表示十進(jìn)制數(shù),number2表示二進(jìn)制數(shù)
  flag = False  
  for i in string_number1: #判斷是否含小數(shù)部分
    if i == '.':
      flag = True
      break
  if flag:
    string_integer, string_decimal = string_number1.split('.') #分離整數(shù)部分和小數(shù)部分
    integer = int(string_integer)
    decimal = Decimal(str(n)) - integer
    l1 = [0,1]
    l2 = []
    decimal_convert = ""
    while True: 
      if integer == 0: break
      x,y = divmod(integer, 2) #x為商,y為余數(shù) 
      l2.append(y)
      integer = x
    string_integer = ''.join([str(j) for j in l2[::-1]]) #整數(shù)部分轉(zhuǎn)換成二進(jìn)制 
    i = 0 
    while decimal != 0 and i < pre: 
      result = int(decimal * 2) 
      decimal = decimal * 2 - result 
      decimal_convert = decimal_convert + str(result) 
      i = i + 1 
    string_number2 = string_integer + '.' + decimal_convert
    return float(string_number2)

  
  else: #若十進(jìn)制只有整數(shù)部分
    l1 = [0,1]
    l2 = []
    while True: 
      if n == 0: break
      x,y = divmod(n, 2) #x為商,y為余數(shù) 
      l2.append(y)
      n = x
    string_number = ''.join([str(j) for j in l2[::-1]]) 
    return int(string_number)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • PyQt5基本控件使用詳解:單選按鈕、復(fù)選框、下拉框

    PyQt5基本控件使用詳解:單選按鈕、復(fù)選框、下拉框

    這篇文章主要介紹了PyQt5基本控件使用:單選按鈕、復(fù)選框、下拉框,本文中的內(nèi)容和實(shí)例也基本回答了開(kāi)篇提到的問(wèn)題。需要的朋友可以參考下
    2019-08-08
  • python基于numpy的線性回歸

    python基于numpy的線性回歸

    這篇文章主要為大家詳細(xì)介紹了python基于numpy的線性回歸,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • python 簡(jiǎn)單的股票基金爬蟲(chóng)

    python 簡(jiǎn)單的股票基金爬蟲(chóng)

    最近基金非?;鸨?,很多原本不投資、不理財(cái)人,也開(kāi)始討論、參與買基金了。根據(jù)投資對(duì)象的不同,基金分為股票型基金、債券基金、混合型基金、貨幣基金。所以今天我們就來(lái)看看,這些基金公司都喜歡買那些公司的股票。
    2021-06-06
  • python進(jìn)程池的簡(jiǎn)單實(shí)現(xiàn)

    python進(jìn)程池的簡(jiǎn)單實(shí)現(xiàn)

    本文主要介紹了python進(jìn)程池的簡(jiǎn)單實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Python中字典與恒等運(yùn)算符的用法分析

    Python中字典與恒等運(yùn)算符的用法分析

    這篇文章主要介紹了Python中字典與恒等運(yùn)算符的用法,結(jié)合實(shí)例形式分析了Python中字典與恒等運(yùn)算符功能、常見(jiàn)用法及操作注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • Python筆記之代理模式

    Python筆記之代理模式

    這篇文章主要為大家詳細(xì)介紹了Python筆記之代理模式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 利用Python搶回在螞蟻森林逝去的能量(實(shí)現(xiàn)代碼)

    利用Python搶回在螞蟻森林逝去的能量(實(shí)現(xiàn)代碼)

    螞蟻森林是一項(xiàng)旨在帶動(dòng)公眾低碳減排的公益項(xiàng)目,每個(gè)人的低碳行為在螞蟻森林里可計(jì)為"綠色能量",很多小伙伴都玩過(guò),今天小編給大家分享一篇教程關(guān)于Python搶回在螞蟻森林逝去的能量,感興趣的朋友跟隨小編一起看看吧
    2022-03-03
  • Pandas之to_sql()插入數(shù)據(jù)到mysql中所遇到的問(wèn)題及解決

    Pandas之to_sql()插入數(shù)據(jù)到mysql中所遇到的問(wèn)題及解決

    這篇文章主要介紹了Pandas之to_sql()插入數(shù)據(jù)到mysql中所遇到的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • python獲取磁盤(pán)號(hào)下盤(pán)符步驟詳解

    python獲取磁盤(pán)號(hào)下盤(pán)符步驟詳解

    在本篇文章里小編給大家整理了關(guān)于python如何獲取磁盤(pán)號(hào)下盤(pán)符的操作步驟以及實(shí)例代碼,有興趣的朋友們學(xué)習(xí)下。
    2019-06-06
  • 基于Python實(shí)現(xiàn)評(píng)論區(qū)抽獎(jiǎng)功能詳解

    基于Python實(shí)現(xiàn)評(píng)論區(qū)抽獎(jiǎng)功能詳解

    這篇文章主要為大家介紹了基于Python如何實(shí)現(xiàn)評(píng)論區(qū)抽獎(jiǎng)的功能,文章的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的朋友可以學(xué)習(xí)一下
    2021-12-12

最新評(píng)論

宣武区| 岚皋县| 阿鲁科尔沁旗| 洛南县| 乐陵市| 阿图什市| 富蕴县| 定远县| 始兴县| 申扎县| 乌恰县| 德令哈市| 垫江县| 洛南县| 新晃| 鄂托克前旗| 鄂伦春自治旗| 海兴县| 龙泉市| 龙岩市| 华亭县| 德令哈市| 获嘉县| 桃江县| 遂溪县| 广东省| 桦甸市| 镇雄县| 洪江市| 邮箱| 东阿县| 鄂州市| 灵山县| 内黄县| 樟树市| 漯河市| 常州市| 登封市| 鄯善县| 靖江市| 定安县|