logo

Osastooperaattorit Pythonissa

Divisioonan operaattorit voit jakaa kaksi lukua ja palauttaa osamäärän, eli ensimmäinen numero tai numero vasemmalla jaetaan toisella oikealla olevalla numerolla tai numerolla ja palauttaa osamäärän.

Osastooperaattorit Pythonissa

Jakooperaattoreita on kahdenlaisia:



  • Float-jako
  • Kokonaislukujako (kerrosjako)

Kun kokonaisluku jaetaan, tulos pyöristetään lähimpään kokonaislukuun ja sitä merkitään symbolilla //. Liukuluku / tarkoittaa liukulukujakoa, joka palauttaa osamäärän liukulukulukuna.

Division Operatorin edut

Jakooperaattori (/) on aritmeettinen perusoperaattori ohjelmointikielissä, joka suorittaa jakooperaation numeerisille arvoille. Tässä on joitain jako-operaattorin käytön etuja:

  1. Aritmeettiset perusoperaatiot: Jakooperaattori on yksi aritmeettisista perusoperaatioista, jota käytetään matematiikassa, tekniikassa ja muilla aloilla. Sen avulla voit jakaa yhden luvun toisella laskutoimituksia varten, kuten laskea lukujoukon keskiarvon tai skaalata arvoa.
  2. Ilmeinen syntaksi : Jakooperaattori tarjoaa tiiviin ja ilmeisen syntaksin jakotoimintojen suorittamiseen koodissa. Sen sijaan, että kirjoittaisit monimutkaisen lausekkeen, jossa on useita aritmeettisia operaatioita, voit käyttää jakooperaattoria jakamiseen yhdellä koodirivillä.
  3. Tarkka ohjaus: Jakooperaattorin avulla voit hallita laskelmien tarkkuutta käyttämällä erilaisia ​​tietotyyppejä tai pyöristysstrategioita. Voit esimerkiksi käyttää liukulukujakoa (/) desimaaliosamäärän laskemiseen tai kokonaislukujakoa (//) katkaistun osamäärän laskemiseen.
  4. Algoritminen tehokkuus: Jakooperaattorilla voidaan toteuttaa tehokkaita algoritmeja numeerisia laskelmia varten, kuten matriisikertolasku, lineaarinen algebra ja numeerinen integrointi. Käyttämällä näissä algoritmeissa jakooperaattoria voit vähentää aritmeettisten operaatioiden määrää ja parantaa koodisi suorituskykyä.
  5. Matemaattinen mallinnus: Jakooperaattoria käytetään matemaattisessa mallintamisessa ja simuloinnissa kuvaamaan muuttujien välisiä suhteita, kuten muutosnopeuksia, kasvunopeuksia tai todennäköisyyksiä. Käyttämällä näissä malleissa jako-operaattoria voit simuloida ja analysoida monimutkaisia ​​järjestelmiä ja ilmiöitä.

Kaiken kaikkiaan jako-operaattori on tehokas ja monipuolinen operaattori, joka tarjoaa laajan valikoiman etuja ohjelmoinnissa ja matematiikassa.



Pythonin jakotyypit

Float-jako

Tämän operaattorin palauttama osamäärä on aina liukuluku, riippumatta siitä, ovatko kaksi lukua kokonaislukuja. Esimerkiksi:

Python 3






print>(>5>/>5>)> print>(>10>/>2>)> print>(>->10>/>2>)> print>(>20.0>/>2>)>

>

>

Lähtö:

1.0 5.0 -5.0 10.0>

Kokonaislukujako (kerrosjako)

Tämän operaattorin palauttama osamäärä riippuu välitettävästä argumentista. Jos jokin numeroista on float, se palauttaa lähdön float-muodossa. Se tunnetaan myös nimellä Lattia jako, koska jos jokin luku on negatiivinen, tulos on lattiatasolla. Esimerkiksi:

Python 3


jos muuten lauseke java



print>(>5>/>/>5>)> print>(>3>/>/>2>)> print>(>10>/>/>3>)>

>

>

Lähtö:

1 1 3>

Harkitse alla olevia lausuntoja Python .

Python 3




# A Python program to demonstrate the use of> # '//' for integers> print> (>5>/>/>2>)> print> (>->5>/>/>2>)>

>

>

Lähtö:

2 -3>

Ensimmäinen tulos on hyvä, mutta toinen saattaa olla yllättävää, jos olemme tulossa Java/C++-maailmaan. Pythonissa //-operaattori toimii kokonaisluku- ja float-argumenttien kerrosjakona. Jakooperaattori '/' palauttaa kuitenkin aina kelluvan arvon.

Huomautus: //-operaattoria käytetään palauttamaan lähin kokonaislukuarvo, joka on pienempi tai yhtä suuri kuin määritetty lauseke tai arvo. Joten yllä olevasta koodista 5//2 palauttaa 2. Tiedät, että 5/2 on 2,5 ja lähin kokonaisluku, joka on pienempi tai yhtä suuri, on 2[5//2]. (se on käänteinen normaalille matematiikalle, normaalissa matematiikassa arvo on 3).

Esimerkki

Python 3




# A Python program to demonstrate use of> # '/' for floating point numbers> print> (>5.0>/>2>)> print> (>->5.0>/>2>)>

>

kevään alustus
>

Lähtö:

2.5 -2.5>

Todellinen kerrosjaon operaattori on //. Se palaa pohja-arvo sekä kokonaisluku- että liukulukuargumenteille.

Python 3




# A Python program to demonstrate use of> # '//' for both integers and floating points> print> (>5>/>/>2>)> print> (>->5>/>/>2>)> print> (>5.0>/>/>2>)> print> (>->5.0>/>/>2>)>

>

>

Lähtö:

2 -3 2.0 -3.0>

Onko jako-operaattori Boolen arvoilla mahdollista?

Sisään Python , jakooperaattoria (/) ei ole määritetty loogisille arvoille. Jos yrität jakaa kaksi loogista arvoa, saat TypeError-ilmoituksen. Jos kuitenkin haluat ylikuormittaa jakooperaattorin mukautetussa luokassa, jolla on Boolen arvoja, voit määrittää __truediv__-erikoismenetelmän. Tässä on esimerkki:

Tässä esimerkissä määritämme MyClassin, jolla on yksi attribuuttiarvo, joka on boolean. Tämän jälkeen ylikuormitamme /-operaattorin määrittämällä __truediv__-menetelmän suorittamaan loogisen toiminnon kahden MyClass-instanssin arvoattribuutille.

Kun kutsumme a / b:tä, __truediv__-metodia kutsutaan ensimmäisenä argumenttina a ja toisena argumenttina b. Metodi palauttaa uuden MyClass-esiintymän, jonka arvo-attribuutti on looginen ja a.value ja b.value.

Huomaa, että jakooperaattorin ylikuormittaminen loogisilla arvoilla ei ole mielekästä tai hyödyllistä, koska jakoa ei ole määritelty loogisille arvoille matematiikassa tai Pythonissa. Yllä oleva esimerkki on vain osoitus siitä, kuinka ylikuormitetaan käyttäjä mukautetussa luokassa.

Python 3




class> MyClass:> >def> __init__(>self>, value):> >self>.value>=> value> >def> __truediv__(>self>, other):> >return> MyClass(>self>.value>and> other.value)> a>=> MyClass(>True>)> b>=> MyClass(>False>)> c>=> a>/> b># c.value is False> print>(c.value)>

>

>

Lähtö:

False>