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

是的,我在处理不同的东西时可以看到,错过了这样一个小的逻辑错误