# 操作数组
mylist = [
['00', '01', '02', '03'],
['10', '11', '12', '13'],
['20', '21', '22', '23'],
['30', '31', '32', '33']
]
# 取值坐标
class Vector:
def move(self, x, y):
pass
# x坐标增加
class VectorUpX(Vector):
def __init__(self, x, y):
self.x = x
self.y = y
def move(self):
self.y += 1
return self.x, self.y
# x坐标减少
class VectorDownX(Vector):
def __init__(self, x, y):
self.x = x
self.y = y
def move(self):
self.y -= 1
return self.x, self.y
# 二维数组取值
class DoubleListHelper:
def __init__(self, target, count, vect_dir):
'''
:param target: 传入列表
:param count: 取值范围
:param vect_dir: 导入函数
'''
self.target = target
self.count = count
self.list_result = self.__get_elements(vect_dir)
def __get_elements(self, vect_dir):
list_result = []
for i in range(self.count):
a, b = vect_dir.move()
list_result.append(self.target[a][b])
return list_result
def __str__(self):
return str(self.list_result)
d01 = DoubleListHelper(mylist, 2, VectorUpX(0, 0))
d01 = DoubleListHelper(mylist,
2, VectorDownX(0, 3))
print(d01)
'''
输出结果:
['02', '01']
'''