W natywnym języku Python, bez użycia NumPy (dla którego numpy.nan != numpy.nan
) nie ma NaN, więc czy mam rację sądząc, że zmiennoprzecinkowy język Pythona ==
jest refleksyjny? Następnie, ponieważ jest symetryczny (a == b
implikuje b == a
) i przechodni (jeśli a==b
i b==c
następnie a==c
), możemy powiedzieć, że Pythona ==
jest relacją równoważności na float
s?Czy Pythona == relacja równoważności na pływaki?
EDIT: OK, więc dowiedziałem się, że jest tam NaN: float('nan')
(dzięki @unutbu), która będzie propagować poprzez różne działania, ale nie każdy rodzimy metoda Python zwraca go (zamiast podnoszenie wyjątek) bez wprowadzania mnie to przez to zadanie?
Nie wiedziałem tego: dziękuję. Czy 'nan' faktycznie jest zwracany przez jakąkolwiek natywną operację w Pythonie (zamiast wywoływanego wyjątku)? – xnx
@xnx: '1e400/1e400' zwraca' nan'. –
Zobacz także [PEP 754] (https://www.python.org/dev/peps/pep-0754/), aby uzyskać więcej informacji na ten temat. –