要求使用Python编写代码,运用字符串格式化,实现将用户输入的十进制整数转换为指定进制的功能
时间: 2024-10-08 11:05:03 浏览: 40
利用Python实现颜色色值转换的小工具
在Python中,你可以使用内置的`format()`函数或者`str.format()`方法,以及`int()`函数配合来进行字符串格式化,将十进制整数转换到其他进制。这里是一个简单的例子,展示了如何将用户输入的十进制数字转换为二进制、八进制和十六进制:
```python
def decimal_to_other_base(decimal_num, base):
if base < 2 or base > 36:
return "Invalid base. Please use a number between 2 and 36."
try:
# 使用内置函数 int() 和 format() 或 str.format()
binary = bin(int(decimal_num, 10))[2:] # to binary (2)
octal = oct(int(decimal_num, 10))[2:] # to octal (8)
hexadecimal = hex(int(decimal_num, 10))[2:].upper() # to hexadecimal (16)
return f"Decimal {decimal_num} in base {base}: \nBinary: {binary}\nOctal: {octal}\nHexadecimal: {hexadecimal}"
except ValueError:
return "Invalid input. Please enter an integer."
# 获取用户输入并转换
decimal_input = input("Enter a decimal number: ")
base_choice = input("Choose a base (2 for binary, 8 for octal, 16 for hexadecimal): ")
result = decimal_to_other_base(decimal_input, int(base_choice))
print(result)
```
在这个代码示例中,首先检查基础是否在有效范围内,然后尝试将输入的十进制数字转换为所需的进制。如果输入无效(如非整数),会捕获`ValueError`并返回错误消息。
阅读全文