武汉理工大学python头歌作业转换进制格式输出
时间: 2024-10-11 16:11:00 浏览: 5
武汉理工大学Python课程中可能会要求学生编写程序将数字字符串按照指定进制(如二进制、八进制、十进制、十六进制)转换并输出。例如,给定一个字符串,首先需要解析出它代表的是哪种进制的数,然后根据相应规则将其转换成另一种进制。
下面是一个简单的示例代码片段,演示如何使用Python处理这样的任务:
```python
def convert_number(input_string, base):
# 判断输入的base是否合法
if base < 2 or base > 36:
return "Invalid base. Base should be between 2 and 36."
# 将输入字符串转换为整数值(默认十进制)
if base == 10:
num = int(input_string)
else:
num = int(input_string, base)
# 按照新的进制转换并返回结果
return format(num, f"b" if base == 2 else "o" if base == 8 else "x" if base == 16 else f"{base}")
# 示例:将二进制字符串转为十进制
input_str_binary = "1010"
converted_decimal = convert_number(input_str_binary, 2)
print(f"Binary to Decimal: {converted_decimal}")
# 同样可以转换其他进制,只需传入不同的base值即可
```
在这个例子中,`convert_number`函数接受一个输入字符串和一个进制作为参数,先判断进制的有效性,然后使用内置的`int`函数根据原始进制转换数字,最后使用`format`函数将数字转换为目标进制的字符串。