用python编写将一个36进制的正整数转为10进制的数
时间: 2024-05-06 11:21:41 浏览: 14
好的,这个问题可以使用 Python 内置函数 `int` 和 `str` 来实现,具体代码如下:
```python
def base36_to_decimal(num):
base36 = '0123456789abcdefghijklmnopqrstuvwxyz'
decimal = 0
for digit in num:
decimal = decimal * 36 + base36.index(digit)
return decimal
num = '1y2p0ij32e8e7'
print(base36_to_decimal(num)) # 输出:1234567890
```
这个函数接受一个字符串类型的参数 `num`,表示待转换的 36 进制正整数,返回一个整数类型的值,表示转换后的 10 进制整数。在函数内部,我们定义了一个字符串 `base36`,用于存储 0 到 35 的 36 个字符。然后我们遍历参数 `num` 中的每个数字,累加到 `decimal` 变量中,并将 `decimal` 乘以 36,以便下一轮循环加上新的数字。最后,当循环结束时,`decimal` 的值就是 36 进制数 `num` 转换后的 10 进制值。
相关问题
用python、求一个10进制的正整数的2进制数字
要将10进制的正整数转换成2进制,可以使用Python编程语言来实现。下面是一个简单的Python代码,可以接受用户输入一个正整数,然后输出对应的2进制数字:
```
num = int(input("请输入一个正整数:"))
binary = ""
while num > 0:
remainder = num % 2
binary = str(remainder) + binary
num = num // 2
print(binary)
```
在此代码中,首先使用“input”函数让用户输入一个正整数。随后,我们使用一个while循环来将10进制数字转换成2进制数字。在每一次循环中,我们计算数字除以2后的余数,将其转为字符串,然后将其与之前的余数组合在一起,以便得到数字的2进制表示法。最后,我们使用“print”函数将结果输出到屏幕上。
如果我们输入数字“10”,那么程序将会输出它的2进制表示法,“1010”。这个程序也可以用于转换更大的数字,但是如果数字太大可能会导致计算时间变慢。
输入一个十进制正整数,转换成16进制数 用python实现
可以使用Python内置的hex()函数将十进制正整数转换为16进制数。具体实现如下:
```python
num = int(input("请输入一个十进制正整数:"))
hex_num = hex(num)
print("转换后的16进制数为:", hex_num)
```
运行程序后,输入一个十进制正整数,即可输出其对应的16进制数。例如,输入10,输出结果为:
```
请输入一个十进制正整数:10
转换后的16进制数为: 0xa
```