python中 int(x) 与 long(x) 有什么区别
我的理解:
因此,除非上述(1)(2)(3)不正确,为什么还需要long()?当int()完成工作? 跳过所有数字范围的long()会伤害我吗?
提到的文档:
class int(x = 0)
返回一个由数字或字符串x构成的整数对象,或 如果没有给出参数,则返回0。如果x是数字,则可以是a 普通整数,长整数或浮点数。如果x是 浮点,转换截断为零。如果是论点 在整数范围之外,该函数返回一个长对象 代替。
class long(x = 0)
返回由字符串或数字x构造的长整型对象。如果 参数是一个字符串,它必须包含一个可能签名的数字 任意大小,可能嵌入在空格中。基本参数是 以与int()相同的方式解释,并且只能在x时给出 是一个字符串。否则,参数可以是普通或长整数或 浮点数和具有相同值的长整数 回。将浮点数转换为整数截断 (朝零)。如果没有给出参数,则返回0L。
代码实验
number = int(number_string) # cast it to integer
print number, "\t", type(number)
number = long(number_string) # cast it to long
print number, "\t", type(number)
答案 0 :(得分:2)
int :整数;相当于Python 2.x中的C long,Python 3.x中的非限制长度
长:长度不限的长整数;仅存在于Python 2.x
中因此,在 python 3x 中,您可以使用 int(),而无需使用 long()。
希望这可以解除你的怀疑吗?