Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
80 views
in Technique[技术] by (71.8m points)

python - How can I use one function for 2 arrays?

So here is my code :

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   

what I want to do is taking x,y coordinates from user and adding them to my arrays.However if I compile that function with code down below:

arraypoint(3,4)
arraypoint(2,3)

it just adds p1 four elements which is logical because when I run the function again it takes len(p1)==0 .So can you help me how can I add 2 elements to p1 and pass rest of them to p2 . I dont want to do something like arraypoint(x,x1,y,y1) so user should pass 2 coordinates each time.

question from:https://stackoverflow.com/questions/65625750/how-can-i-use-one-function-for-2-arrays

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

That code is working well, but your logic is not correct. you define if len(p1)>2 so when your first and second call of function is doesn't go in the if statement because the condition is not satisfied.

for the output you want try if len(p1)>=2 in function.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...