Вопрос:

FutureWarning при сравнении объекта NumPy с «None»

python arrays numpy

577 просмотра

1 ответ

1142 Репутация автора

У меня есть функция, которая получает некоторые аргументы, а также некоторые необязательные аргументы. В нем предпринятые действия зависят от того, cбыл ли заполнен необязательный аргумент :

def func(a, b, c = None):

    doStuff()

    if c != None:
        doOtherStuff()

Если cне прошло, то это работает нормально. Однако, в моем контексте, если c он пропущен, он всегда будет numpyмассивом. И сравнение numpyмассивов с Noneвыводит следующее предупреждение:

FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.

Итак, что является самым чистым и наиболее общим способом проверить, был ли cон передан или нет, не сравнивая с None?

Автор: Anonymous Источник Размещён: 22.08.2016 08:27

Ответы (1)


11 плюса

25462 Репутация автора

Решение

Используйте if c is not Noneвместо этого. В дополнение к предотвращению предупреждения, это обычно считается наилучшей практикой .

Автор: jakevdp Размещён: 22.08.2016 08:29
Вопросы из категории :
32x32