logo

Division Operators i Python

Divisionsoperatører giver dig mulighed for at dividere to tal og returnere en kvotient, dvs. det første tal eller tal til venstre divideres med det andet tal eller tal til højre og returnerer kvotienten.

Division Operators i Python

Der er to typer divisionsoperatører:



  • Float division
  • Heltalsinddeling (Etageinddeling)

Når et heltal divideres, afrundes resultatet til det nærmeste heltal og er angivet med symbolet //. Det flydende deal / står for flydende division, som returnerer kvotienten som et flydende tal.

Fordele ved divisionsoperatøren

Divisionsoperatoren (/) er en grundlæggende aritmetisk operator i programmeringssprog, der udfører divisionsoperationen på numeriske værdier. Her er nogle fordele ved at bruge divisionsoperatoren:

  1. Grundlæggende aritmetiske operationer: Divisionsoperatoren er en af ​​de grundlæggende aritmetiske operationer, der bruges inden for matematik, teknik og andre områder. Det giver dig mulighed for at dividere et tal med et andet for at udføre beregninger, såsom at beregne gennemsnittet af et sæt tal eller skalere en værdi.
  2. Ekspressiv syntaks : Divisionsoperatoren giver en kortfattet og udtryksfuld syntaks til udførelse af divisionsoperationer i kode. I stedet for at skrive et komplekst udtryk med flere aritmetiske operationer, kan du bruge divisionsoperatoren til at udføre division i en enkelt kodelinje.
  3. Præcisionskontrol: Divisionsoperatoren giver dig mulighed for at kontrollere præcisionen af ​​dine beregninger ved at bruge forskellige datatyper eller afrundingsstrategier. For eksempel kan du bruge floating-point division (/) til at beregne en decimalkvotient, eller heltalsdivision (//) til at beregne en trunkeret kvotient.
  4. Algoritmisk effektivitet: Divisionsoperatoren kan bruges til at implementere effektive algoritmer til numeriske beregninger, såsom matrixmultiplikation, lineær algebra og numerisk integration. Ved at bruge divisionsoperatoren i disse algoritmer kan du reducere antallet af aritmetiske operationer og forbedre ydeevnen af ​​din kode.
  5. Matematisk modellering: Divisionsoperatoren bruges i matematisk modellering og simulering til at repræsentere sammenhænge mellem variable, såsom ændringshastigheder, vækstrater eller sandsynligheder. Ved at bruge divisionsoperatoren i disse modeller kan du simulere og analysere komplekse systemer og fænomener.

Samlet set er divisionsoperatøren en kraftfuld og alsidig operatør, der giver en lang række fordele inden for programmering og matematik.



Typer af division i Python

Float division

Den kvotient, der returneres af denne operator, er altid et flydende tal, uanset om to tal er heltal. For eksempel:

Python3




et array i java



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

>

>

Output:

1.0 5.0 -5.0 10.0>

Heltalsinddeling (Etageinddeling)

Den kvotient, der returneres af denne operator, afhænger af det argument, der sendes. Hvis et af tallene er flydende, returnerer det output i float. Det er også kendt som Etage division, fordi, hvis et tal er negativt, vil outputtet blive bundet. For eksempel:

Python3




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

>

>

Produktion:

1 1 3>

Overvej nedenstående udsagn i Python .

Python3




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

>

>

Output:

2 -3>

Det første output er fint, men det andet kan være overraskende, hvis vi kommer til Java/C++-verdenen. I Python fungerer //-operatoren som en etageopdeling for heltals- og float-argumenter. Divisionsoperatoren '/' returnerer dog altid en flydende værdi.

Bemærk: Operatoren // bruges til at returnere den nærmeste heltalsværdi, som er mindre end eller lig med et angivet udtryk eller en specificeret værdi. Så fra ovenstående kode returnerer 5//2 2. Du ved, at 5/2 er 2,5, og det nærmeste heltal, der er mindre end eller lig, er 2[5//2].(det er omvendt til normal matematik, i normal matematik er værdien 3).

Eksempel

Python3




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

>

>

Output:

2.5 -2.5>

Den rigtige etageopdelingsoperatør er //. Det vender tilbage bundværdien for både heltals- og flydende kommaargumenter.

Python3




streng understreng

# 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>)>

>

java åbner en fil
>

Output:

2 -3 2.0 -3.0>

Er en divisionsoperator på booleske værdier mulig?

I Python , divisionsoperatoren (/) er ikke defineret for booleske værdier. Hvis du forsøger at dividere to booleske værdier, vil du få en TypeError. Men hvis du vil overbelaste divisionsoperatoren for en brugerdefineret klasse, der har booleske værdier, kan du definere __truediv__ specialmetoden. Her er et eksempel:

I dette eksempel definerer vi en MyClass, der har en enkelt attributværdi, som er en boolean. Vi overbelaster derefter /-operatøren ved at definere __truediv__-metoden for at udføre en logisk operation på værdiattributten for to MyClass-forekomster.

Når vi kalder a / b, kaldes __truediv__ metoden med an som det første argument og b som det andet argument. Metoden returnerer en ny forekomst af MyClass med en værdiattribut, der er den logiske og af a.value og b.value.

Bemærk, at overbelastning af divisionsoperatoren for booleske værdier ikke er meningsfuld eller nyttig, da division ikke er defineret for booleske værdier i matematik eller i Python. Eksemplet ovenfor er blot en demonstration af, hvordan man overbelaster en operatør i en brugerdefineret klasse.

Python3




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)>

>

>

Produktion:

False>