introduktion
tal er ekstremt almindelige i programmeringen. De bruges til at repræsentere ting som skærmstørrelsesdimensioner, geografiske placeringer, penge og point, den tid, der går i en video, positioner af spilavatarer og farver gennem tildeling af numeriske koder.
at være i stand til effektivt at udføre matematiske operationer i programmeringen er en vigtig færdighed at udvikle på grund af hvor ofte du vil arbejde med tal., Selvom en forståelse på højt niveau af matematik helt sikkert kan hjælpe dig med at blive en bedre programmør, er det ikke en forudsætning. Hvis du ikke har en baggrund i matematik, så prøv at tænke på matematik som et værktøj til at opnå det, du gerne vil opnå, og som en måde at forbedre din logiske tænkning på.
Vi arbejder med to af Pythons mest anvendte numeriske datatyper, heltal og floats:
denne vejledning vil gå over operatører, der kan bruges med taldatatyper i Python.
operatører
en operatør er et symbol eller en funktion, der angiver en handling., For eksempel er plustegnet eller + i matematik den operatør, der angiver tilføjelse.
i Python vil vi se nogle kendte operatører, der er overført fra matematik, men andre operatører, vi vil bruge, er specifikke for computerprogrammering.
Her er en hurtig reference tabel over matematik-relaterede operatører i Python. Vi dækker alle følgende operationer i denne tutorial., of x and y
x
and y
x / y
x
to the y
powerWe’ll also be covering compound assignment operators, including +=
and *=
, that combine an arithmetic operator with the =
operator.,
Addition og subtraktion
i Python udfører addition og subtraktion operatører ligesom de gør i matematik. Faktisk kan du bruge Python programmeringssprog som en lommeregner.,”>
i Stedet for at videregive heltal direkte i print
erklæring, kan vi initialisere variabler til at stå for heltalsværdier:
a = 88b = 103print(a + b)
Output191
Fordi heltal kan være både positive og negative tal (og 0), så vi kan tilføje et negativt tal med et positivt tal:
c = -36d = 25print(c + d)
Output-11
Desuden vil opføre sig på samme måde med flåd:
e = 5.5f = 2.5print(e + f)
Output8.0
Fordi vi tilføjet to flyder sammen, Python, der returneres en float værdi med en decimal.,
syntaks for subtraktion er den samme som for over, bortset fra, at du ændre din operatør fra plus-tegn (+
) til minus-tegn (-
):
g = 75.67h = 32print(g - h)
Output43.67
Her, vi trækkes et heltal fra en float. Python returnerer en flyde, hvis mindst et af de numre, der er involveret i en ligning, er en flyde.,
Monadiske Aritmetiske Operationer
En kær matematiske udtryk kun består af en komponent eller et element, og i Python plus og minus tegn kan bruges som et enkelt element, der er forbundet med en værdi, til at returnere værdien identitet (+
), eller ændre tegnet af værdi (-
).
selvom det ikke er almindeligt anvendt, angiver plustegnet identiteten af værdien., Vi kan bruge plustegnet med positive værdier:
i = 3.3print(+i)
Output3.3
Når vi bruger på plus-tegnet med en negativ værdi, det vil også vende tilbage identiteten af denne værdi, og i dette tilfælde ville det være en negativ værdi:
j = -19print(+j)
Output-19
Med en negativ værdi på plus-tegnet returnerer de samme negative værdi.
minustegnet ændrer alternativt tegn på en værdi., Så, når vi passerer en positiv værdi, vi vil finde, at minustegn foran den værdi, som vil vende en negativ værdi:
i = 3.3print(-i)
Output-3.3
Alternativt, når vi bruger det minus kær-operatør, med en negativ værdi, en positiv værdi vil blive returneret:
j = -19print(-j)
Output19
Den monadiske aritmetiske operationer er angivet af plus og minus tegn vil vende tilbage til enten værdien identitet i tilfælde af +i
, eller modsat fortegn af den værdi, som i -i
.,
multiplikation og Division
ligesom addition og subtraktion vil multiplikation og division se meget ud som de gør i matematik. Tegnet, vi bruger i Python til multiplikation, er *
, og tegnet, vi bruger til division, er /
.,
Her er et eksempel på at gøre multiplikation i Python med to float-værdier:
k = 100.1l = 10.1print(k * l)
Output1011.0099999999999
Når du opdeler i Python 3, din kvotient, vil altid blive returneret som en float, selvom du bruger to heltal:
m = 80n = 5print(m / n)
Output16.0
Dette er en af de store ændringer mellem Python 2 og Python 3., Python 3’s tilgang giver en relativ svar, så når du bruger /
for at opdele 11
med 2
kvotienten af 5.5
vil blive returneret. I Python 2 returnerede kvotienten for udtrykket 11 / 2
er 5
.
Python 2 s /
operatør udfører gulvtæppe division, hvor kvotienten x
det tal, der returneres, er det største heltal, der er mindre end eller lig med x
., Hvis du kører ovenstående eksempel print(80 / 5)
med Python 2 i stedet for Python 3, vil du modtage 16
som output uden decimal.
i Python 3 kan du bruge //
til at udføre gulvdeling. Udtrykket 100 // 40
returnerer værdien af 2
. Floor division er nyttig, når du har brug for en kvotient til at være i hele tal.
Modulo
%
operatør er modulo, som returnerer resten snarere end kvotienten efter division., Dette er nyttigt for at finde tal, der er multipla af samme nummer, for eksempel.
Lad os se på modulo i aktion:
o = 85p = 15print(o % p)
Output10
for At bryde dette ned, 85 divideret med 15 returnerer kvotienten af 5 med en resterende del af 10. Værdien 10
er det, der returneres her, fordi modulo-operatøren returnerer resten af et divisionsudtryk.
Hvis vi bruger to pontoner med modulo, en float værdi, vil blive returneret for resten:
q = 36.0r = 6.0print(o % p)
Output0.0
I tilfælde af 36.,0 divideret med 6,0, er der ingen rest, så værdien af 0.0
returneres.
Po .er
**
operatør i Python bruges til at hæve nummeret til venstre til effekten af eksponenten til højre. Det vil sige i udtrykket 5 ** 3
, hæves 5 til 3. effekt. I matematik ser vi ofte dette udtryk gengivet som 53, og hvad der virkelig foregår er 5 multipliceres med sig selv 3 gange., I Python, vi ville få samme resultat af 125
ved at køre enten 5 ** 3
eller 5 * 5 * 5
.
Lad os se på et eksempel med variabler:
s = 52.25t = 7print(s ** t)
1063173305051.292
at Hæve float 52.25
for at magten af 7
i **
operatør resultater i en stor float værdi, der returneres.,
operatør forrang
i Python, som i matematik, skal vi huske på, at operatører vil blive evalueret i rækkefølge af forrang, ikke fra venstre til højre eller højre til venstre.,
Hvis vi ser på følgende udtryk:
u = 10 + 10 * 5
Vi kan læse den venstre til højre, men husk, at mange vil ske først, så hvis vi kalder print(u)
, vil vi modtager følgende værdi:
Output60
Dette er fordi 10 * 5
giver 50
og så kan vi tilføje 10
for at vende tilbage 60
som det endelige resultat.,
You may be familiar with another acronym for the order of operations, such as BEDMAS or BODMAS., Uanset hvilket akronym der fungerer bedst for dig, så prøv at huske det, når du udfører matematiske operationer i Python, så de resultater, du forventer, returneres.
Tildelingsoperatører
den mest almindelige tildelingsoperatør er en, du allerede har brugt: lighedstegnet=
. =
tildelingsoperatør tildeler værdien til højre til en variabel til venstre. For eksempel: v = 23
tildeler værdien af heltal 23
til variabel v
.,
Ved programmering er det almindeligt at bruge sammensatte tildelingsoperatører, der udfører en operation på en variabels værdi og derefter tildele den resulterende nye værdi til den variabel. Disse sammensatte aktører kombinere en aritmetisk operator med =
operatør, så i tillæg vil vi kombinere +
med =
for at få den sammensatte aktør +=
., Lad os se, hvad der ser sådan ud:
w = 5w += 1print(w)
Output6
for det Første, satte vi den variabel w
, der svarer til værdien af 5
så vi brugte +=
sammensatte tildelingsoperatoren for at tilføje det rette antal til værdien af de venstre-variablen og derefter tildele resultatet til w
.,
Sammensatte assignment operatorer bruges ofte i tilfælde af for sløjfer, som du vil bruge, når du ønsker at gentage en proces flere gange:
for x in range (0, 7): x *= 2 print(x)
Output024681012
Med for-løkke, vi var i stand til at automatisere processen med *=
operatør, der multipliceret variabel w
med antallet 2
og derefter tildelt resultatet i variabel w
for den næste iteration af for-løkken.,Python har en sammensat tildelingsoperatør for hver af de aritmetiske operatører, der er diskuteret i denne tutorial:
sammensatte tildelingsoperatører kan være nyttige, når ting skal øges eller formindskes trinvist, eller når du skal automatisere visse processer i dit program.
konklusion
denne vejledning dækkede mange af de operatører, du vil bruge med heltal og float numeriske datatyper. Hvis du gerne vil fortsætte med at læse om tal i Python, kan du fortsætte med indbyggede Python 3-funktioner til at arbejde med tal., hvis du vil vide mere om andre datatyper, skal du kigge på forståelsen af datatyper i Python 3 og lære om, hvordan du konverterer datatyper ved at læse Sådan konverteres datatyper i Python 3.