2019-05-11 问题记录:python进制转换

1.

print int(12345,base=2)

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

int()函数用来将一个字符串或数字类型转换成整数,如果只有一个参数值,这个值可以是字符串或数字;但是传入两个参数,第一个参数是字符串,第二个参数是进制(二进制、八进制、十进制或十六进制)。现在上述的实例中,第一个参数传入的是数字,第二个是八进制,所以会报错

2.(和1一样的意思)

print int(12345,2)

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

3.

print int("12345",2)

ValueError: invalid literal for int() with base 2: '12345'

函数含义弄反了,int的第二个参如果是2/8/16,表示这个str要转成的int是2/8/16进制数,由这个数转为10进制;

而不是说把str转后的int变成2/8/16进制;不存在12345这样的二进制数,所以报错

posted on 2019-05-11 21:10  IT-Kira  阅读(1037)  评论(0编辑  收藏  举报

导航