python进制转换(二进制、十进制和十六进制)及注意事项

使用内置函数实现进制转换实现比较简单,主要用到以下函数:

bin()、oct()、int()、hex()

 

下面分别详解一下各个函数的使用(附实例)

 

第一部分:其他进制转十进制

 

1.二进制转十进制

 

使用函数:int()

 

实例:

 

1
2
3
#结果是4
   
int('100'2)

 

注意:上述一定不要忘记加引号,因为二进制是一个字符串

 

如果不加引号会出现如下错误:

 

Traceback (most recent call last):

 File "<pyshell#2>", line 1, in <module>

   int(100,2)

TypeError: int() can't convert non-string with explicit base

 

2.八进制转十进制

 

使用函数:int()

 

实例:

1
2
3
#结果是4
   
int('04'8)

 

注意:上述一定不要忘记加引号,因为八进制是一个字符串

 

3.十六进制转十进制

 

使用函数:int()

 

实例:

 

1
2
3
#结果是4
   
int('0x4'16)

 

注意:上述一定不要忘记加引号,因为十六进制是一个字符串

 

 

第二部分:十进制转其他进制

 

1.十进制转二进制

 

使用函数:bin()

 

bin()函数是讲整数转换成二进制字符串

 

实例:

 

1
2
3
4
5
6
7
8
9
#十进制转二进制,其中int(4,10)表示4是一个十进制整数
   
bin(int('4',10))
   
#或者,直接输入一个十进制
   
bin(4)
   
#结果是:0b100

 

 

注意:这里的0b100,其实就是100,0b的b是binary的意思

 

 

2.十进制转八进制

 

使用函数: oct()

 

1
2
3
4
5
6
7
8
#这里也要注意,4要加引号表示是一个字符串
oct(int('4',10))
   
#或者,不转换直接输入十进制数
   
oct(4)
   
#结果为:04

 

3.十进制转十六进制

 

使用函数:hex()

 

实例:

 

1
2
3
4
5
6
7
8
#十进制转十六进制
hex(int('4'10))
   
#或者
   
hex(4)
   
#结果为:0x4

 

posted @ 2016-12-14 11:43  paranoia1  阅读(625)  评论(0编辑  收藏  举报