2017-07-06 13 views
1

私はこの擬似コードがあります。np.appendまたはNone

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

をしかし、問題は、aまたはbであるか、その両方ではなく、彼らがしていることを配列のいずれであることができませんでした。だから私はこれを行っている:

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 

これは非常に「神託」本当に醜いと思わないが、私はこれを行うための簡単な方法...任意のアイデアを把握することはできませんか?条件の一致がそれ以外のものを返した場合にのみ

+0

ニシキヘビ事がリストに配列を収集し、CONCATENATEでそれらを結合することです。 'np.append'は誤った名前で誤用されています。 – hpaulj

+0

なぜ名前が誤っていますか?指定した軸で追加するためのものです –

+1

リストの人にあまりにも多くを付け加えます。そのコードを見るには 'np.source(np.append)'を実行してください。 – hpaulj

答えて

1

あなたは配列を付加することができる2つの短絡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 
+0

は、 –

+0

@OferSadanあなたはそうです。型チェックはそれらを処理する必要があります。 –

+0

ありがとう、これは私が探していたものです! –

関連する問題