鱼C论坛

 找回密码
 立即注册
查看: 2506|回复: 7

整形用bin()函数转换之后 没办法用int()函数再转换成整形了

[复制链接]
发表于 2014-8-11 03:55:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

应该不是我操作的问题吧?


>>> a = 123
>>> b = '123'

>>> c = bin(a)

>>> type(b)
<class 'str'>
>>> type(c)
<class 'str'>

>>> bb = int(b)
>>> type(bb)
<class 'int'>

>>> cc = int(c)
Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    cc = int(c)
ValueError: invalid literal for int() with base 10: '0b1111011'
>>>


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-8-11 04:01:08 | 显示全部楼层
先坐个沙发......
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-11 08:14:15 From FishC Mobile | 显示全部楼层
cc = int( c, base = 2 )
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-11 12:46:54 | 显示全部楼层
bevin 发表于 2014-8-11 08:14
cc = int( c, base = 2 )

嗯,可以了,但这是什么原理啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-11 12:49:26 | 显示全部楼层
base参数的这是基数啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-11 12:54:08 | 显示全部楼层
嗯 上网查了查 int() 还有base参数 代表进制 如 8进制 2 进制  16进制

int('10',10)  int('10',16)  int('10',8) int('10',2)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-8-11 12:56:31 | 显示全部楼层
bevin 发表于 2014-8-11 12:49
base参数的这是基数啊

搞定了 谢谢啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-11 15:25:01 | 显示全部楼层
xiao6641167 发表于 2014-8-11 12:54
嗯 上网查了查 int() 还有base参数 代表进制 如 8进制 2 进制  16进制

int('10',10)  int('10',16)  int ...

不同进制的数字要用int的时候base需要改变嘛。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 07:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表