以下是一个示例的解决方法:
class AthenaArray:
def __init__(self, arr):
self.arr = arr
def get_column(self, index):
column = []
for row in self.arr:
if index < len(row):
column.append(row[index])
return column
# 测试代码
arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
athena_array = AthenaArray(arr)
column_1 = athena_array.get_column(0)
column_2 = athena_array.get_column(1)
column_3 = athena_array.get_column(2)
print(column_1) # 输出:[1, 4, 7]
print(column_2) # 输出:[2, 5, 8]
print(column_3) # 输出:[3, 6, 9]
这个示例中,我们定义了一个AthenaArray
类,接受一个二维数组作为参数,并实现了get_column
方法,用于获取指定列的元素。在get_column
方法中,我们遍历二维数组的每一行,如果指定的列索引小于当前行的长度,则将该元素添加到结果列表中。最后返回结果列表,即为指定列的元素列表。
在测试代码中,我们创建了一个包含3行3列的二维数组,并实例化了AthenaArray
类。然后分别调用get_column
方法,传入指定的列索引,获取每一列的元素列表,并打印输出。