码迷,mamicode.com
首页 > 其他好文 > 详细

二进制、八进制、十进制、十六进制之间的相互转换

时间:2018-07-27 12:08:33      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:tee   八进制   数据类型   odi   数据   相互   class   其他   str   

二进制、八进制、十进制、十六进制之间的相互转换。

代码:

# -*- coding: UTF-8 -*-

# 主要的思想,就是,先把数字转成10进制,利用10进制中的自带函数去解决

# 十进制数字
num = 10

# 十进制的分别转换成2/8/16进制
print("二进制", bin(num), type(bin(num)))
print("八进制", oct(num), type(oct(num)))
print("十六进制", hex(num), type(hex(num)))

print("2#####################################################")
# 2进制数字
twonum = bin(num)

# 2进制的分别转换成10/8/16进制
print("十进制", int(twonum, 2), type(int(twonum, 2)))  # 其他的转换都以这个为主
print("八进制", oct(int(twonum, 2)), type(oct(int(twonum, 2))))
print("十六进制", hex(int(twonum, 2)), type(hex(int(twonum, 2))))

print("8#####################################################")
# 8进制数字
eightnum = oct(num)

# 8进制的分别转换成2/10/16进制
print("十进制", int(eightnum, 8), type(int(eightnum, 8)))  # 其他的转换都以这个为主
print("二进制", bin(int(eightnum, 8)), type(bin(int(eightnum, 8))))
print("十六进制", hex(int(eightnum, 8)), type(hex(int(eightnum, 8))))

print("16#####################################################")
# 16进制数字
sixteennum = hex(num)

# 16进制的分别转换成2/8/10进制
print("十进制", int(sixteennum, 16), type(int(sixteennum, 16)))    # 其他的转换都以这个为主
print("二进制", bin(int(sixteennum, 16)), type(bin(int(sixteennum, 16))))
print("八进制", oct(int(sixteennum, 16)), type(oct(int(sixteennum, 16))))

运行结果:

二进制 0b1010 <class ‘str‘>
八进制 0o12 <class ‘str‘>
十六进制 0xa <class ‘str‘>
2#####################################################
十进制 10 <class ‘int‘>
八进制 0o12 <class ‘str‘>
十六进制 0xa <class ‘str‘>
8#####################################################
十进制 10 <class ‘int‘>
二进制 0b1010 <class ‘str‘>
十六进制 0xa <class ‘str‘>
16#####################################################
十进制 10 <class ‘int‘>
二进制 0b1010 <class ‘str‘>
八进制 0o12 <class ‘str‘>
[Finished in 0.5s]

注意一下其中的数据类型,只有十进制的数字是int类型。

如果单独输入其他某个进制的,其为int类型,只要转成str就行了。

二进制、八进制、十进制、十六进制之间的相互转换

标签:tee   八进制   数据类型   odi   数据   相互   class   其他   str   

原文地址:http://blog.51cto.com/feature09/2150890

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!