有没有一种简单的方法可以将一个或两个 np.arrays 传递给函数而不用展开数组?
Is there a simple way to pass one or two np.arrays to a function without splatting an array?
我有一个函数需要能够接受一个或两个数组,转换它们,然后 return 转换后的数组
是否有 function(*args)
的替代方案,它不会在其第一个维度上解压单个 Numpy 数组,或者建议的解决方法?
*args
怎么了?它与 lists/arrays 一起玩得很好,没有飞溅。
def foo(*args):
print(args)
foo([1])
foo([1], [2])
([1],)
([1], [2])
如何使用可选参数:
def transformsinglearr(arr):
#enter code here
def foo(arr1 = None, arr2 = None):
arr1t = None
arr2t = None
if not( arr1 is None) : arr1t = transformsinglearr(arr1)
if not( arr2 is None) : arr2t = transformsinglearr(arr2)
result = [arr1t, arr2t]
result = [i for i in result if i] #remove nones
return result
它不如 *args 优雅,但它做同样的工作。
我有一个函数需要能够接受一个或两个数组,转换它们,然后 return 转换后的数组
是否有 function(*args)
的替代方案,它不会在其第一个维度上解压单个 Numpy 数组,或者建议的解决方法?
*args
怎么了?它与 lists/arrays 一起玩得很好,没有飞溅。
def foo(*args):
print(args)
foo([1])
foo([1], [2])
([1],)
([1], [2])
如何使用可选参数:
def transformsinglearr(arr):
#enter code here
def foo(arr1 = None, arr2 = None):
arr1t = None
arr2t = None
if not( arr1 is None) : arr1t = transformsinglearr(arr1)
if not( arr2 is None) : arr2t = transformsinglearr(arr2)
result = [arr1t, arr2t]
result = [i for i in result if i] #remove nones
return result
它不如 *args 优雅,但它做同样的工作。