Mam funkcję, która otrzymuje pewne argumenty, plus kilka opcjonalnych argumentów. W nim, podjęte działanie jest zależne od tego, czy opcjonalny argument c
została wypełniona:FutureWarning przy porównywaniu obiektu NumPy z "Brakiem"
def func(a, b, c = None):
doStuff()
if c != None:
doOtherStuff()
Jeśli c
nie jest przekazywana, to działa dobrze. Jednak w moim kontekście, jeśli c
zostanie przekazana, zawsze będzie to tablica numpy
. I porównując numpy
tablic do None
daje następujące ostrzeżenie:
FutureWarning: comparison to `None` will result in an elementwise object comparison in the future.
Więc, co jest najczystszym i najbardziej ogólny sposób, by sprawdzić, czy nie c
została podjęta lub nie bez porównania do None
?
Wystarczy zauważyć, że w oryginalnym kontekście "jeśli c nie jest Brak:" jest właściwe. –
Dzięki Tim - zaktualizowany. – jakevdp