从零开始学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中将二进制转换为十进制的文章的结尾。

(完)