Как я могу сделать функцию NUMPY, которая принимает массив NUMPY, итеративный или скаляр?
Предположим, у меня есть это:
def incrementElements(x):
return x+1
но я хочу изменить его так, чтобы он мог принимать либо числовой массив, итеративный, либо скалярный, и выдвигать аргумент в числовой массив и добавлять 1 к каждому элементу.
Как я мог это сделать? Я полагаю, я мог бы проверить класс аргумента, но это кажется плохой идеей. Если я сделаю это:
def incrementElements(x):
return numpy.array(x)+1
он работает правильно с массивами или итерациями, но не со скалярами. Проблема здесь в том, чтоnumpy.array(x)
для скаляра x создает какой-то странный объект, который содержится в массиве numpy, но не являетсят а "реальный» массив; если я добавлю к нему скаляр, результат будет понижен до скаляра.