特にゼロの場合でも、数値が正か負かをテストしたいと思います。IEEE-754 では が許可-0.0
されており、Python で実装されています。
私が見つけた唯一の回避策は次のとおりです。
def test_sign(x):
return math.copysign(1, x) > 0
そしておそらく(おそらく実行に時間がかかります):
def test_sign(x):
math.atan2(x, -1)
通常のライブラリのどこにも専用関数が見つかりませんでした。何か見落としていませんか?
編集:(これが関連する理由)
これは私の現在の計画ではありませんが、質問をするときに、引数が正か負かに応じて関数をオーバーロードしようとしました。ユーザーが負のゼロを渡すことができるようにすると、ゼロ値の入力に対する曖昧さが解決されます。そして、これは他のユースケースにも一般的に役立つと思います。