Python abs() Funktsioon: Absoluutväärtuse näited
⚡ Nutikas kokkuvõte
Python abs() on sisseehitatud funktsioon, mis tagastab arvu absoluutväärtuse, st selle kauguse nullist ilma märgita. See aktsepteerib täisarve, ujukomaarve ja kompleksarve, tagastades kompleksarvude puhul suuruse.

Python abs()
Python abs() on sisseehitatud funktsioon, mis on saadaval standardteegis Python. See tagastab antud arvu absoluutväärtuse. Arvu absoluutväärtus on väärtus ilma märki arvestamata. Arv võib olla täisarv, ujukomaarv või kompleksarv. Kui antud arv on kompleksarv, tagastatakse selle suurus.
Süntaks
abs() funktsiooni süntaks on näidatud allpool:
abs(value)
Parameetrid (väärtus)
Abs()-le absoluutväärtuse saamiseks antav sisendväärtus. See võib olla täisarv, ujuk või kompleksarv.
Tagastatav väärtus:
Funktsioon abs() tagastab antud arvu absoluutväärtuse.
- Kui sisend on täisarv, on ka tagastusväärtus täisarv.
- Kui sisend on ujukoma, on ka tagastusväärtus ujukoma.
- Kui sisendiks on kompleksarv, on tagastusväärtuseks sisendi suurus.
Näited
Järgmised näited demonstreerivad funktsiooni abs() rakendamist täis-, uju- ja kompleksväärtustele.
Code Näide 1: Täisarv ja ujukarv
Täisarvu ja ujukomaarvu absoluutväärtuse saamiseks vaadake seda koodi:
# testing abs() for an integer and float int_num = -25 float_num = -10.50 print("The absolute value of an integer number is:", abs(int_num)) print("The absolute value of a float number is:", abs(float_num))
Väljund:
The absolute value of an integer number is: 25 The absolute value of a float number is: 10.5
Näide 2: Kompleksarv
Kompleksarvu absoluutväärtuse saamiseks kasutage seda koodi:
# testing abs() for a complex number complex_num = (3+10j) print("The magnitude of the complex number is:", abs(complex_num))
Väljund:
The magnitude of the complex number is: 10.44030650891055
Kuidas leida loendi absoluutväärtust Python
Funktsioon abs() töötab ühe numbriga, seega terve loendi edastamine tekitab tüübivea (TypeError). Selle rakendamiseks loendi igale elemendile kasutage loendi mõistmist, mis kutsub abs() funktsiooni iga elemendi puhul:
numbers = [12, 30, -33, -22, 77, -100] abs_numbers = [abs(num) for num in numbers] print(abs_numbers)
Väljund:
[12, 30, 33, 22, 77, 100]
Arusaamine säilitab algse järjekorra ja tagastab uue positiivsete väärtuste loendi. Sama tulemuse saab saavutada näiteks sisseehitatud map() funktsiooniga. list(map(abs, numbers)), mis rakendab abs() funktsiooni igale elemendile ilma selget tsüklit kirjutamata.
- Kasutage loendi mõistmist, kui soovite ka väärtusi filtreerida või teisendada.
- Kasuta map() funktsiooni lühikese ja loetava käsu jaoks, mis rakendab abs() funktsiooni otse.
- Suurte numbriliste andmekogumite puhul on NumPy massiiv np.abs() funktsiooniga kiirem kui Python silmus
Python abs() vs math.fabs()
Python pakub absoluutväärtuse saamiseks kahte võimalust: sisseehitatud abs() ja matemaatikamooduli fabs() funktsiooni. Need näevad välja sarnased, aga käituvad erinevalt:
import math print(abs(-7)) # 7 (int is unchanged) print(math.fabs(-7)) # 7.0 (float result)
Väljund:
7 7.0
Kahe funktsiooni peamised erinevused on järgmised:
- Tagastusviis: abs() säilitab sisendi tüübi ja tagastab täisarvu korral täisarvu, samas kui math.fabs() tagastab alati ujukoma.
- Import: abs() on alati saadaval, aga math.fabs() nõuab
import math. - Kompleksarvud: abs() tagastab kompleksarvu suuruse, samas kui math.fabs() tekitab kompleksarvu sisendi korral tüübivea (TypeError).
Praktilised rakendused Python abs() Funktsioon
Kuna see jätab märgiinfo kõrvale, on abs() kasulik alati, kui oluline on ainult väärtuse suurus, mitte selle suund. Levinud näide on kahe näidu vahe leidmine:
temp_morning = 12 temp_night = -5 print("Temperature change:", abs(temp_morning - temp_night))
Väljund:
Temperature change: 17
Absoluutväärtuse igapäevased kasutusalad hõlmavad järgmist:
- Vahemaad ja erinevused: kahe punkti, temperatuuri või ajatempli vahelise vahe mõõtmine olenemata sellest, kumb väärtus on suurem.
- Vea mõõdikud: ennustatud väärtuse ja tegeliku väärtuse vahelise absoluutvea arvutamine.
- Tolerantsi kontrollid: testides, kas tulemus on sihtmärgile piisavalt lähedal, näiteks
abs(actual - expected) < 0.01. - Rahandus: kasumi või kahjumi suuruse esitamine ilma märgita.
Nagu ümar() funktsioonabs() on sisseehitatud funktsioon, mida saab otse välja kutsuda ilma ühtegi moodulit importimata.
