当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Decimal转Other Bases用法及代码示例


给定一个十进制数,将其转换为二进制、八进制和十六进制数。这是将十进制转换为二进制、十进制转换为八进制、十进制转换为十六进制的函数。

例子:

Input : 55
Output : 55  in Binary :  0b110111
         55 in Octal :  0o67
         55  in Hexadecimal :  0x37

Input : 282
Output : 282  in Binary :  0b100011010
         282 in Octal :  0o432
         282  in Hexadecimal :  0x11a

将十进制转换为其他基数示例

一种解决方案是使用下面帖子中讨论的方法。 Convert from any base to decimal and vice versa Python 提供了用于标准基数转换的直接函数,例如 bin()、hex() 和 oct()

PYTHON


# Python program to convert decimal to binary, 
# octal and hexadecimal 
# Function to convert decimal to binary 
def decimal_to_binary(dec): 
    decimal = int(dec) 
    # Prints equivalent decimal 
    print(decimal, " in Binary : ", bin(decimal)) 
# Function to convert decimal to octal 
def decimal_to_octal(dec): 
    decimal = int(dec) 
    # Prints equivalent decimal 
    print(decimal, "in Octal : ", oct(decimal)) 
# Function to convert decimal to hexadecimal 
def decimal_to_hexadecimal(dec): 
    decimal = int(dec) 
    # Prints equivalent decimal 
    print(decimal, " in Hexadecimal : ", hex(decimal)) 
# Driver program 
dec = 32
decimal_to_binary(dec) 
decimal_to_octal(dec) 
decimal_to_hexadecimal(dec) 
输出
(32, ' in Binary : ', '0b100000')
(32, 'in Octal : ', '040')
(32, ' in Hexadecimal : ', '0x20')

该程序的时间复杂度为 O(1),因为该程序仅由三个简单函数组成,并且所有函数都只打印值。该程序的空间复杂度也是 O(1),因为不需要额外的内存来存储任何值。

使用字符串格式将十进制转换为其他基数

我们可以使用字符串格式将十进制数转换为其他基数。以下是如何使用字符串格式将十进制数转换为二进制、八进制和十六进制的示例:

Python3


def convert_to_other_bases(decimal):
    # Convert to binary
    binary = "{0:b}".format(decimal)
     
    # Convert to octal
    octal = "{0:o}".format(decimal)
     
    # Convert to hexadecimal
    hexadecimal = "{0:x}".format(decimal)
     
    # Print results
    print(f"{decimal} in binary: {binary}")
    print(f"{decimal} in octal: {octal}")
    print(f"{decimal} in hexadecimal: {hexadecimal}")
convert_to_other_bases(55)
输出
55 in binary: 110111
55 in octal: 67
55 in hexadecimal: 37

时间复杂度: O(1),因为代码仅执行恒定数量的操作(格式化和打印结果)。
辅助空间: O(1) 作为代码,仅创建一些不依赖于输入大小(十进制数)的变量(二进制、八进制、十六进制)。



相关用法


注:本文由纯净天空筛选整理自佚名大神的英文原创作品 Convert Decimal to Other Bases in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。