当其中一个值为空或无时,np.append

时间:2017-07-06 10:02:16

标签: python numpy

我有这个伪代码:

a = np.zeros([3,3])
b = np.zeros([3,3])
c = np.append(a,b,axis=0)

但问题是,ab或两者都可以是None而不是它们所在的数组。所以我这样做了:

def emptyappend(a,b):
    if type(a)==np.ndarray and b is None:
        return a
    elif type(b)==np.ndarray and a is None:
        return b
    elif type(a)==np.ndarray and type(b)==np.ndarray:
        return np.append(a,b,axis=0)
    else:
        return None

这看起来真的很丑陋而且不是很&" pythonic"但是我无法找到一个简单的方法来做到这一点......任何想法?

1 个答案:

答案 0 :(得分:1)

只有条件匹配才能附加数组,否则返回两个短路中的一个or

def emptyappend(a, b):
    if type(a) is np.ndarray and type(b) is np.ndarray:
        return np.append(a, b, axis=0)
    return a or b