Python二进制转化为十进制数学算法详解

作者:__如果 时间:2021-11-09 19:45:20 

在python中可以通过内置函数int()函数进行二进制转十进制;int()函数可以将一个指定进制的数字型字符串或者十进制数字转化为整型。

Python

Python是一种广泛使用的解释型、高级和通用的编程语言。Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。

Python二进制

解题思路很典型,利用二进制数做加法的特性,递归或迭代计算不考虑进位的结果和有无进位,将加法的结果分为不考虑进位的结果和进位进位,分别用位运算处理。不考虑进位的结果用异或计算a+b(无进位) = a^b验证:0+0=0=0^0, 1+0=0=1^0, 1+1=0=1^1是否进位用与运算表示。因为是进位,因此结果还需要向左移一位a+b(进位)= (a&b) << 1验证:0+0=0=0&0, 1+0=0=1&0, 1+1=0=1&1综上,两个数的加法可以表示为 a+b = a^b + (a&b) << 1。

Python十进制

由于十进制数是一个加权数,因此从十进制到二进制(从10到2)的转换也将产生一个加权的二进制数,其中最右边的位是最低有效位LSB,而最左的位 是最高有效位或最高有效位,我们可以将其表示为MSB。

Python二进制转化为十进制数学算法

网上大多是直接用函数转化二进制的,下面的写法是自己的数学算法

# binary意为二进制
binary = input("请输入您的二进制组\n")
binary_ = list(binary)
bin_ = len(binary_)

power_ = 0

for i in range(bin_):  # 计算第一个二进制
   if binary_[i] == '1':
       length = bin_ - 1 - i  # 算背后还有几位
       power = 1
       while length > 0:
           length -= 1
           power = power * 2
       power_ = power + power_

print(power_)

数学能力对于编程来说也是至关重要的,希望大家可以在闲暇之余多做一些算法题,锻炼自己!

同时在这里也给大家分享一个好用的内置函数map( )

Python的手册中是这样介绍的:

map( function , iterable , / , *iterables )

Return an iterator that applies function to every item of iterable, yielding the results.

返回一个迭代器,该迭代器将函数应用于可迭代的每个项

*迭代器:迭代器的作用是用来访问容器(用来保存元素的数据结构)中的元素,所以使用迭代器,我们就可以访问容器中里面的元素。没错!这和访问数组这个序列的指针一样,因为数组范围内的指针就是迭代器的一种

例:map( int , string[ i ])

将string的元素一个个转化为int类型

来源:https://blog.csdn.net/m0_73202283/article/details/128201632

标签:Python,二进制,转化,十进制
0
投稿

猜你喜欢

  • 异地远程访问本地SQL Server数据库

    2024-01-18 20:00:18
  • Python catplot函数自定义颜色的方法

    2021-01-29 16:25:01
  • 短视频(douyin)去水印工具的实现代码

    2024-04-29 13:40:15
  • js实现鼠标拖拽缩放div实例代码

    2024-05-13 10:38:12
  • SQL按照日、周、月、年统计数据的方法分享

    2024-01-24 13:48:27
  • Visual Studio Code搭建django项目的方法步骤

    2022-11-28 22:04:00
  • html注释书写规范

    2008-08-13 13:06:00
  • Python数据分析之 Matplotlib 3D图详情

    2021-03-05 21:20:33
  • Go语言resty http包调用jenkins api实例

    2024-05-21 10:27:27
  • 使用Python对MySQL数据操作

    2024-01-16 16:04:26
  • Python深度学习之Keras模型转换成ONNX模型流程详解

    2023-01-02 00:32:44
  • PHP连接和操作MySQL数据库基础教程

    2023-11-20 22:41:47
  • Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)

    2021-02-04 03:22:19
  • SQL Server数据库中伪列及伪列的含义详解

    2024-01-27 19:19:19
  • Python 编码处理-str与Unicode的区别

    2021-04-15 15:38:43
  • Python实战之利用Geopandas算出每个省面积

    2022-05-11 07:46:39
  • VBScript中变量作用域

    2007-11-02 10:03:00
  • MySQL数据库表中的约束详解

    2024-01-28 16:39:17
  • python matplotlib折线图样式实现过程

    2022-10-28 12:18:08
  • C#基于SQLiteHelper类似SqlHelper类实现存取Sqlite数据库的方法

    2024-01-14 14:42:05
  • asp之家 网络编程 m.aspxhome.com