十进制与十六进制的转换
时间: 2023-11-29 18:04:01 浏览: 32
以下是两种Python实现十进制与十六进制转换的方法:
1.使用Python内置函数hex()和int()进行转换:
```python
# 十进制转十六进制
decimal_num = 123
hex_num = hex(decimal_num)
print(hex_num) # 输出:0x7b
# 十六进制转十进制
hex_num = '7b'
decimal_num = int(hex_num, 16)
print(decimal_num) # 输出:123
```
2.手动实现十进制转十六进制:
```python
# 十进制转十六进制
decimal_num = 123
hex_num = ''
while decimal_num > 0:
remainder = decimal_num % 16
if remainder < 10:
hex_num = str(remainder) + hex_num
else:
hex_num = chr(remainder - 10 + ord('A')) + hex_num
decimal_num //= 16
print(hex_num) # 输出:7B
# 十六进制转十进制
hex_num = '7B'
decimal_num = 0
for i in range(len(hex_num)):
char = hex_num[i]
if '0' <= char <= '9':
decimal_num = decimal_num * 16 + int(char)
elif 'A' <= char <= 'F':
decimal_num = decimal_num * 16 + ord(char) - ord('A') + 10
print(decimal_num) # 输出:123
```