Dmi*_*kov 13
我会去的
>>> map(sum, zip((1, 2), (3, 4)))
[4, 6]
Run Code Online (Sandbox Code Playgroud)
或者,更自然地:
>>> numpy.array((1, 2)) + numpy.array((3, 4))
array([4, 6])
Run Code Online (Sandbox Code Playgroud)
hig*_*dth 11
你想做元素添加,还是附加元组?默认情况下python可以
(1,2)+(3,4) = (1,2,3,4)
Run Code Online (Sandbox Code Playgroud)
您可以将自己定义为:
def myadd(x,y):
z = []
for i in range(len(x)):
z.append(x[i]+y[i])
return tuple(z)
Run Code Online (Sandbox Code Playgroud)
另外,正如@ delnan的评论所表明的那样,这更好地写成了
def myadd(xs,ys):
return tuple(x + y for x, y in izip(xs, ys))
Run Code Online (Sandbox Code Playgroud)
甚至更多功能:
myadd = lambda xs,ys: tuple(x + y for x, y in izip(xs, ys))
Run Code Online (Sandbox Code Playgroud)
然后做
if( b < a) return myadd((1,0),foo(a-b,b))
Run Code Online (Sandbox Code Playgroud)