我正在尝试使用数组的2行添加大数,将数组的每一列用作数字,然后逐元素逐列确定是否需要保留1。
我试图将列表理解与地图一起使用,以便不必进行迭代。我遇到的问题是如何处理语法,以便可以同时返回当前元素和下一个更高的元素(x[y]
和x[y+1]
):
targdigit = 1000
ind = 2
n = np.zeros((3,targdigit + 1))
def adder(intup):
global targdigit, ind
x = intup[0]
y = intup[1]
ind +=1
if y == targdigit - 1 and x[y] > 0:
print('targ index is ' + str(ind))
sys.exit()
if x[y] >= 10:
x[y] %= 10
x[y+1] += 1
return x
for i in range (2):
n[i][0] = 1
while True:
n[2] = n[0] + n[1]
n[2] = np.array([adder((n[2], xi)) for xi in range(n.shape[1])])
n[0], n[1] = n[1], n[2]
映射和return语句(可能还有函数自变量?)将更改同时应用于x[y]
和x[y+1]
的合适语法是什么?