使用函数Python从数组中删除零
这里的交易,我有一个数组的倍数元素,其中大约一半是零。我想通过使用函数而不是传统的x=x[x!=0]来删除这些零 我试过:使用函数Python从数组中删除零,python,arrays,function,numpy,Python,Arrays,Function,Numpy,这里的交易,我有一个数组的倍数元素,其中大约一半是零。我想通过使用函数而不是传统的x=x[x!=0]来删除这些零 我试过: def funct(x,y): x=x[x!=0] y=y[y!=0] 但是我得到的输出与我执行函数之前得到的变量相同。具有多个零的数组 我是python新手,如果这个问题听起来很可笑,我很抱歉 多谢各位 x[x!=0]返回一个新数组,您将该新数组分配给一个局部变量x 你可以做: def funct(x, y): x = x[x!=0] y
def funct(x,y):
x=x[x!=0]
y=y[y!=0]
但是我得到的输出与我执行函数之前得到的变量相同。具有多个零的数组
我是python新手,如果这个问题听起来很可笑,我很抱歉
多谢各位 x[x!=0]返回一个新数组,您将该新数组分配给一个局部变量x
你可以做:
def funct(x, y):
x = x[x!=0]
y = y[y!=0]
# do something here
return x,y
a, b = funct(a, b) #assign the returned value back to the global variables
我认为,它将只返回一个元素,而不是一个列表。对于Python列表来说,这是一个NumPy。对象是数组,不是列表。@Sukritkalla问题被标记为numpy。@Everyone:对不起。忘了看那个+1. :好的,非常感谢你的回答!对不起,这么简单的问题:P!祝大家今天愉快!