int(x[,base])是如何工作的? [英] How does int(x[,base]) work?

查看:48
本文介绍了int(x[,base])是如何工作的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下代码的输出为:

int("12", 5) 
O/P: 7

int("0", 5)
O/P: 0

int("10", 2)
O/P: 2

我无法理解这一点。Python文档中写道:"[,base]"部分是可选的,即它可能带有一个或两个参数。

第一个参数必须是引号中包含int值的字符串。

推荐答案

int(string, base)接受任意基。您可能熟悉二进制和十六进制,也可能熟悉八进制;这些只是用不同的基数表示整数的方法:

  • 二进制表示以2为基数的数字(0和1)
  • 八进制表示以8为基数的数字(0、1、2、3、4、5、6和7)
  • 小数是日常(西方)生活中用来谈论整数的,它是以10为基数(0到9)。
  • 十六进制为基数16(0到9,然后是A、B、C、D、E、F)。

每个基数确定符号中的每个"位置"可以取多少值。我们在十进制中数到9,然后添加一个位置来计算‘十’,因此10表示1乘以10,0乘以1,因此10表示1乘以10,0乘以1。计数超过99,然后添加第三位数,依此类推。在二进制中只有两位,所以在1之后计数到10,即1乘以2,0乘以1,在11之后计数到100

base参数仅为整数基数,不限于2、8、10或16。基数5表示数字用0到4表示。小数点10在基数5中为20,例如(2乘以5)。

int(string, 5)然后将该字符串解释为基数为5的数字,并将生成一个Python整数来反映其值:

>>> int('13', 5)  # one time 5, 3 times 1  == 8
8
>>> int('123', 5)  # one time 5**2 (25), 2 times 5, 3 times 1  == 38
38

如果您必须命名基数为5的数字,则可能会将其命名为Pental

这篇关于int(x[,base])是如何工作的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆