python输入一行字符串,去掉非16进制字符,输出16进制字符串和转换后的10进制数。。
时间: 2024-10-29 15:17:29 浏览: 42
python3.4 将16进制转成字符串的实例
在Python中,你可以使用正则表达式库re来匹配并过滤出只包含16进制字符的部分,然后将其转换为16进制字符串和对应的十进制数。以下是一个简单的示例:
```python
import re
def hex_string_and_decimal(input_str):
# 使用正则表达式匹配16进制字符
hex_pattern = r'[0-9A-Fa-f]+'
match = re.match(hex_pattern, input_str)
if match:
hex_chars = match.group() # 提取匹配到的16进制部分
decimal_num = int(hex_chars, 16) # 将16进制转为10进制整数
# 输出16进制字符串和10进制数
print(f"16进制字符串: {hex_chars}")
print(f"10进制数: {decimal_num}")
else:
print("输入字符串不含有效的16进制数字.")
# 测试函数
input_line = input("请输入一个可能含有16进制字符的字符串: ")
hex_string_and_decimal(input_line)
```
当你运行这个程序并输入一个包含16进制字符的字符串,它会按照描述进行处理。如果没有找到有效的16进制字符,它会输出一条相应的提示。
阅读全文