写一个Python的1-36进制任意转换代码
时间: 2024-04-16 09:27:39 浏览: 67
python进制转换代码
当然可以!以下是一个将任意进制数转换为另一种进制的Python代码示例:
```python
def convert_base(num, base):
if num == 0:
return '0'
digits = []
while num:
digits.append(int(num % base))
num //= base
digits.reverse()
return ''.join(str(i) for i in digits)
def convert_number(number, from_base, to_base):
if from_base == to_base:
return number
decimal = 0
for i, digit in enumerate(reversed(str(number))):
decimal += int(digit) * (from_base ** i)
return convert_base(decimal, to_base)
```
这里有两个函数:`convert_base` 和 `convert_number`。`convert_base` 函数将十进制数转换为任意进制数,`convert_number` 函数接受一个数、原始进制和目标进制,并将其转换为目标进制。
下面是一些示例用法:
```python
# 将二进制数 '1010' 转换为十进制
decimal = convert_number('1010', 2, 10)
print(decimal) # 输出: 10
# 将十进制数 42 转换为十六进制
hexadecimal = convert_number(42, 10, 16)
print(hexadecimal) # 输出: 2A
# 将八进制数 '77' 转换为十进制
decimal = convert_number('77', 8, 10)
print(decimal) # 输出: 63
# 将十六进制数 'FF' 转换为二进制
binary = convert_number('FF', 16, 2)
print(binary) # 输出: 11111111
```
你可以根据需要调用 `convert_number` 函数来进行不同进制之间的转换。希望对你有所帮助!
阅读全文