x
サイズ変更されていない、たとえば、サイズ変更されている可能性のある数値パラメーターx = 1
、リスト、タプル、またはndarrayなどを受け入れる関数を作成したいと思いますx = np.array([1,2])
。両方のケースを処理するコードを書く良い方法はありますか?
具体的な例として、が単なる数値の場合はx
(事前定義された形状のxshape
)配列にブロードキャストし、が間違った形状の配列の場合はエラーを返すことが目標であるとします。x
x
import numpy as np
import sys
if np.shape(np.atleast_1d(x)) == (1,):
x = np.ones(xshape) * x
elif np.shape(x) != xshape:
sys.exit("wrong shape for x")
上記のコードは、ネストの問題を除けば、機能しているようですx = [[2]]
。また、などの推奨される方法に反しているようtry / except
です。任意の提案をいただければ幸いです。