pyarrow 根据索引从 pyarrow int 数组中获取 int

pyarrow get int from pyarrow int array based on index

我正面临这个非常烦人的问题,pyarrow 没有给我来自 list/array 的 int :((

所以,我有:

x=pa.array([1,2,3])
x[0]
<pyarrow.Int64Scalar: 1>

我只想要 1 回来!我试过了:

>>> x[0].as_py
<built-in method as_py of pyarrow.lib.Int64Scalar object at 0x7f62a3abc0c0>

然而,当我在字符串上执行此操作时,它按我预期的那样工作:

>>> y=pa.array(['1','2','3'])
>>> str(y[0])
1

为什么这对 int 不起作用? :((

因为as_py是一个方法,所以调用方法需要有括号:

>>> x[0].as_py()
1

str(y[0]) 起作用的原因是因为 __str__ 方法在将对象传递给 str 函数时使用。