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

 

原文地址:https://www.cnblogs.com/paranoia/p/6178682.html