python进制转换代码_十进制转八进制python

python进制转换代码_十进制转八进制python本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:十进制小数⇒二进制小数乘2取整对十进制小数乘2得到的整数部分和小数部分,整数部分即是相应的二进制数码,再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分。如此不断重复,直到小数部分为0或达到精度要求为止.第一次所得到为最高位,最后一次得到为最低位如:0.25的二进制0.25*2=…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能。分享给大家供大家参考,具体如下:

十进制小数 ⇒ 二进制小数

乘2取整

对十进制小数乘2得到的整数部分和小数部分,

整数部分即是相应的二进制数码,

再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分。

如此不断重复,直到小数部分为0或达到精度要求为止.

第一次所得到为最高位,最后一次得到为最低位

如:

0.25的二进制

0.25*2=0.5 取整是0

0.5*2=1.0 取整是1

即0.25的二进制为 0.01 ( 第一次所得到为最高位,最后一次得到为最低位)

0.8125的二进制

0.8125*2=1.625 取整是1

0.625*2=1.25 取整是1

0.25*2=0.5 取整是0

0.5*2=1.0 取整是1

即0.8125的二进制是0.1101(第一次所得到为最高位,最后一次得到为最低位)

def dec2bin(x):

x -= int(x)

bins = []

while x:

x *= 2

bins.append(1 if x>=1. else 0)

x -= int(x)

return bins

print(dec2bin(.8125))

# [1, 1, 0, 1]

二进制小数 ⇒ 十进制小数

小数点后,从左向右,每位分别表示

20171012101716611.jpg?2017912101734

def bin2dec(b):

d = 0

for i, x in enumerate(b):

d += 2**(-i-1)*x

return d

print(dec2bin(0.8125))

# [1, 1, 0, 1]

print(bin2dec(dec2bin(0.8125)))

# 0.8125

PS:这里再为大家推荐几款计算与转换工具供大家参考使用:

在线任意进制转换工具:http://tools.jb51.net/transcoding/hexconvert

科学计算器在线使用_高级计算器在线计算:http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:http://tools.jb51.net/jisuanqi/jsq

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

本文标题: Python实现的十进制小数与二进制小数相互转换功能

本文地址: http://www.cppcns.com/jiaoben/python/206411.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192941.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • XXE注入漏洞

    XXE注入漏洞什么是XML要想清楚XXE漏洞,首先要了解XMLXML可扩展标记语言(EXtensibleMarkupLanguage)。它是一门用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型。XML很像HTML,但是标签没有被预定义,需要自行定义标签。它的文档结构包括XML声明、DTD文档类型定义(可选)、文档元素。它的设计宗旨是传输数据,而不是显示数据。php版本大于5.4.45的默认不解析外部实体传参实体:有%一般实体:无%xxe漏洞与ssrf漏洞相似虽然场景不同,

  • vue获取上传文件路径_vue中文件上传及接收「建议收藏」

    vue获取上传文件路径_vue中文件上传及接收「建议收藏」准备:前端:vue环境+axios+elemen-ui后端:node.jsmulter前端代码://引入axiosimportaxiosfrom’axios’;//获取用户信息getUserInfo(){//发送请求获取用户信息getInfo().then(res=>{//接收数据let{data}=res;this.userInfo=data[0…

  • 滑雪教学视频高级双板_双板滑雪中级技巧

    滑雪教学视频高级双板_双板滑雪中级技巧转载于:http://www.cnblogs.com/1-2-3/archive/2012/03/08/ski-vidio.html1. 央视教学片http://www.youku.com/playlist_show/id_1526075_ascending_1_mode_pic_page_1.html  共21集,讲解非常详尽,但是从另一方面讲,它太长了,掺杂了各种花里胡哨的东西

  • 如何理解相位式激光测距公式

    如何理解相位式激光测距公式参考链接1:相位式激光测距法中相位产生原理参考链接2:相位法激光测距原理及算法详解公式t=Δφ/w在N=0时才成立,可以用多尺测量方法。如果单尺测量,精度较小。选择高频率,则测程变小。所以,综合使用多尺测量。2L=c/f可以用于计算精尺和粗尺频率。…

  • 2019-05-21 SpringBoot集成UReport2

    2019-05-21 SpringBoot集成UReport2

  • 黑客初学者刷屏技巧_初学者,这些技巧将加速您的编码

    黑客初学者刷屏技巧_初学者,这些技巧将加速您的编码黑客初学者刷屏技巧Whenyoujuststartoutyourprogrammingjourney,therearesomanyshinytoolsandtechnologiestoexplore,youalmostdon’tknowwheretostart.Fortunately,therearenumerousguidesonho…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号