Python 如何对2个阵列使用一个函数?
这是我的代码:Python 如何对2个阵列使用一个函数?,python,python-3.x,function,Python,Python 3.x,Function,这是我的代码: p2=[] p1=[] def arraypoint(x,y): if len(p1)>2: p2.append(x) p2.append(y) else: p1.append(x) p1.append(y) return p2,p1 我想做的是从用户那里获取x,y坐标并将它们添加到我的数组中。但是,如果我使用下面的代码编译该函数: arraypoi
p2=[]
p1=[]
def arraypoint(x,y):
if len(p1)>2:
p2.append(x)
p2.append(y)
else:
p1.append(x)
p1.append(y)
return p2,p1
我想做的是从用户那里获取x,y坐标并将它们添加到我的数组中。但是,如果我使用下面的代码编译该函数:
arraypoint(3,4)
arraypoint(2,3)
它只添加了四个元素,这是合乎逻辑的,因为当我再次运行该函数时,需要len(p1)==0。那么你能帮助我如何向p1添加两个元素,并将其余元素传递给p2吗。我不想做类似于
arraypoint(x,x1,y,y1)
的事情,所以用户每次应该传递2个坐标。代码运行良好,但您的逻辑不正确。您定义了if len(p1)>2
,因此当函数的第一次和第二次调用为时,不会进入if
语句,因为条件不满足
对于您想要的输出,请在函数中尝试
如果len(p1)>=2
。len(p1)
返回2
,如果您使用
则意味着它必须是最小值3是的,我在处理不同的东西时可以看到,错过了这样一个小的逻辑错误