Python long() 函数


Python long() 函数用于表示任意大小的整数,允许您处理超出常规整数限制的超大数字。

注意:Python 2 的 long() 函数在 Python 3 中已被弃用。Python 3 使用内置 int() 函数,该函数可以处理任意大小的整数。

语法


 long(x [,base])

参数

long() 函数采用两个参数,如下所示 -

参数 描述
x 表示要转换为 long 数字的值。
base (可选)指定 'x' 中数字的基数。它可以是 2 到 36 之间的任何整数。如果未提供,则默认基数为 “10”。

返回值

此函数返回一个 long 对象。

示例 1

下面我们有一个很大的整数 number。我们使用 long() 函数将其显式转换为长整数 -


number = 123456789012345678901234567890
long_number = long(number)
print('获得的长值为:',long_number)

以下是上述代码的输出 -

('获得的长值为:', 123456789012345678901234567890L)

示例 2

下面使用 long() 函数将大数的字符串表示转换为长整数 -


string_number = "987654321098765432109876543210"
long_number = long(string_number)
print('获得的长值为:',long_number)

上述代码的输出如下 -

('获得的长值为:', 987654321098765432109876543210L)

示例 3

下面对长整数执行算术运算,显式使用 long() 函数进行转换 -


num1 = 123456789012345678901234567890
num2 = 987654321098765432109876543210
result = long(num1) + long(num2)
print('将获得的长值相加为:',result)

获得的结果如下所示 -

('将获得的长值相加为:', 1111111110111111111011111111100L)

示例 3

在 Python 2 中,我们可以在表达式同时使用正整数和长整数,下面将一个常规整数与一个长整数 “num1” -


regular_integer = 42
num1 = 123456789012345678901234567890
combined_result = regular_integer + long(num1)
print('获得的长值为:',combined_result)

输出如下所示 -

('获得的长值为:', 123456789012345678901234567932L)

示例 4

下面将大型幂运算的结果会自动提升为长整数,显示 Python 2 长整数的自动处理 -


small_number = 12345
result = small_number ** 20
print('获得的长值为:', result)

生成的输出如下 -

('获得的长值为:', 6758057543099832246538913025974955939211204840442478677426191001091098785400390625L)