Ich habe eine einfache Funktion, die mathematisch ist: < /p>
Ich kenne die Operation x ** 2 wird ein Numpy -Array zurückgeben, wenn ein Numpy -Array geliefert wird, und einen Schwimmer, wenn ein Float geliefert wird. Ich habe meine Funktion wie diese so gestaltet, dass sie das Array -Gehäuse verarbeiten. HINWEIS: Die integrierte Funktion, die ich nicht glaube, ist nativ vektorisiert, und ich bin müde, np.Vectorize zu verwenden, auch wenn sie funktioniert, weil ich (denke), dass ich schon einmal einen großen Leistungsverschlechterung gesehen habe.
def f(x):
out = np.zeros(np.shape(x))
for i,X in enumerate(X):
out
= scipy.integrate.quad(y,0,5)[0]
return out
< /code>
Ich habe oft eine if -Anweisung verwendet wie: < /p>
if ~isinstance(t,np.ndarray):
t = np.asarray([t])
< /code>
Ich frage mich, ob es einen effizienteren Weg gibt. Gibt es einen Einzeiler? Kann ich hinzufügen, dass der Eingang nicht lächerlich ist wie eine Saite auch auf elegante und verständliche Weise?