Test ob 0.0 Vorzeichen besitzt

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Benutzeravatar
darktrym
User
Beiträge: 784
Registriert: Freitag 24. April 2009, 09:26

Einfache Frage aber wie teste ich denn ob 0.0 ein Vorzeichen hat?
Definitionsgemäß ist doch -0.0 = +0.0.
Ich benötige es aber um bei einer Division ggf. + oder - Inf zurückzugeben.
„gcc finds bugs in Linux, NetBSD finds bugs in gcc.“[Michael Dexter, Systems 2008]
Bitbucket, Github
Sirius3
User
Beiträge: 17749
Registriert: Sonntag 21. Oktober 2012, 17:20

@darktrym: numpy kennt signbit:

Code: Alles auswählen

>>> numpy.signbit(+0.0)
False
>>> numpy.signbit(-0.0)
True
liefert aber auch gleich -inf zurück:

Code: Alles auswählen

>>> numpy.array([1])/-0.0
array([-inf])
Benutzeravatar
darktrym
User
Beiträge: 784
Registriert: Freitag 24. April 2009, 09:26

Will eigentlich innerhalb der Standardbibliothek bleiben, bin jetzt hängengeblieben bei:

Code: Alles auswählen

def has_sign(number):
    return copysign(1.0, number) < 0
„gcc finds bugs in Linux, NetBSD finds bugs in gcc.“[Michael Dexter, Systems 2008]
Bitbucket, Github
Antworten