SORU
27 Mayıs 2012, Pazar


Python - abs vs fab

Python ile bir sayının mutlak değerini bulmak için iki benzer görünümlü bir yöntem olduğunu fark ettim:

İlk

abs(-5)

İkinci

import math
math.fabs(-5)

Nasıl bu yöntemleri birbirinden farklıdır?

CEVAP
27 Mayıs 2012, Pazar


math.fabs() eğer mümkünse yüzer argüman değil, bir istisna atar, eğer () dönüştürür. O zaman mutlak değer ve eşzamanlı olarak döner.

Yüzer de tam sayılar ile çalışır ve karmaşık sayılar ek olarak. Dönüş türü bağımsız değişken türüne bağlıdır.

In [7]: type(abs(-2))
Out[7]: int

In [8]: type(abs(-2.0))
Out[8]: float

In [9]: type(abs(3 4j))
Out[9]: float

In [10]: type(math.fabs(-2))
Out[10]: float

In [11]: type(math.fabs(-2.0))
Out[11]: float

In [12]: type(math.fabs(3 4j))
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/home/alexei/<ipython-input-12-8368761369da> in <module>()
----> 1 type(math.fabs(3 4j))

TypeError: can't convert complex to float

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ADDVOiCE

    ADDVOiCE

    28 Mayıs 2009
  • Fubar Protocol

    Fubar Protoc

    21 AĞUSTOS 2010
  • TokShogun

    TokShogun

    6 HAZİRAN 2009