python十进制小数转二进制小数,从零开始学Python|如何在Python中将小数转换为二进制...

Python是一种高度通用且功能强大的编程语言。在可以做的许多事情中,从十进制转换为二进制,反之亦然,这是最突出的一项。因此,在本文中,我们将更多地讨论如何在Python中将十进制转换为二进制,反之亦然。

本文将介绍以下指针,

让我们开始!

要了解此操作的含义,请查看以下示例。

从十进制到二进制

输入8

输出:1 0 0 0

从二进制到十进制

输入:100

输出4

让我们看看如何在Python中将Decimal转换为Binary,

在Python中将小数转换为二进制

为了将十进制转换为二进制,请看下面的示例。

继续以n / 2调用转换函数,直到n> 1,

之后执行n%1以获得转换后的二进制数的MSB。

示例: 7

1)。7/2 =商= 3(大于1),余数= 1。

2)。3/2 =商= 1(不大于1),余数= 1。

3)。1%2 =余数= 1。

因此,答案是111。

让我们看一个示例程序,

样例程序

# Function to print binary number for the

# input decimal using recursion

def decimalToBinary(n):

if(n > 1):

# divide with integral result

# (discard remainder)

decimalToBinary(n//2)

print(n%2, end=' ')

# Driver code

if __name__ == '__main__':

decimalToBinary(8)

print("n")

decimalToBinary(18)

print("n")

decimalToBinary(7)

print("n")

上面程序的输出将如下所示。

1000

10010

111

我们也可以使用bin函数在Python中将十进制转换为二进制,让我们看看如何,

利用Bin功能

#Function to convert Decimal number

# to Binary number

def decimalToBinary(n):

return bin(n).replace("0b","")

# Driver code

if __name__ == '__main__':

print(decimalToBinary(8))

print(decimalToBinary(18))

print(decimalToBinary(7))

上面程序的输出看起来像这样

1000

10010

111

既然您知道如何在Python中从十进制转换为二进制,那么让我们看一下如何将二进制转换为十进制。

Python中的二进制到十进制

为了更好地理解这一点,请参考下面的示例。

示例: 1011

1)。给定二进制数与10的模。

(1011 % 10 = 1)

2)。将rem与2乘幂

它是从右端开始的位置。

(1 * 2^0)

请注意,我们从0开始计数位置。

3)。将结果与先前生成的结果相加。

十进制=十进制+(1 * 2 ^ 0)

4)。通过将二进制数除以10来更新二进制数。

(1011 / 10 = 101)

5)。继续重复上面的步骤,直到二进制> 0。

最终转换-:(1 * 2 ^ 3)+(0 * 2 ^ 2)+

(1 * 2^1) + (1 * 2^0) = 11

让我们看一个示例程序,

样例程序

执行上述程序后,输出将如下所示。

4

5

9

让我们转到Python中该“从十进制转换为二进制”的最后一位。

样例程序

# Function to convert Binary number

# to Decimal number

def binaryToDecimal(n):

return int(n,2)

# Driver code

if __name__ == '__main__':

print(binaryToDecimal('100'))

print(binaryToDecimal('101'))

print(binaryToDecimal('1001'))

上面程序的输出将是

4

5

9

这使我们到了在Python中将二进制转换为十进制的文章的结尾。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值