Úvod
čísla jsou v programování velmi běžná. Používají se k reprezentaci věcí, jako jsou rozměry obrazovky, geografická umístění, peníze a body, množství času, který prochází ve videu, pozice herních avatarů a barvy přiřazením číselných kódů.
Být schopen efektivně provádět matematické operace v programování je důležitá dovednost rozvíjet, protože, jak často budete pracovat s čísly., Ačkoli porozumění matematice na vysoké úrovni vám jistě pomůže stát se lepším programátorem, není to předpoklad. Pokud nemáte zázemí v matematice, zkuste si matematiku jako nástroj, jak dosáhnout toho, co chcete dosáhnout, a jako způsob, jak zlepšit své logické myšlení.
Budeme pracovat s dvěma Python je nejčastěji používané číselné datové typy, celá čísla a plave:
Tento kurz půjde přes operátory, které lze použít s počet datových typů v Pythonu.
operátory
operátor je symbol nebo funkce, která označuje operaci., Například v matematice znaménko plus nebo + je operátor, který označuje přidání.
v Pythonu uvidíme některé známé operátory, které jsou přeneseny z matematiky, ale ostatní operátory, které použijeme, jsou specifické pro počítačové programování.
zde je rychlá referenční tabulka operátorů souvisejících s matematikou v Pythonu. Budeme pokrývat všechny následující operace v tomto tutoriálu., 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.,
sčítání a odčítání
v Pythonu operátory sčítání a odčítání provádějí stejně jako v matematice. Ve skutečnosti můžete použít programovací jazyk Python jako kalkulačku.,“>
Místo toho, potkávací celá čísla přímo do print
prohlášení, můžeme inicializovat proměnné stojan pro celočíselné hodnoty:
a = 88b = 103print(a + b)
Output191
Protože celá čísla mohou být jak kladná a záporná čísla (a 0), můžeme přidat záporné číslo kladným číslem:
c = -36d = 25print(c + d)
Output-11
Kromě toho bude chovat podobně s plováky:
e = 5.5f = 2.5print(e + f)
Output8.0
Protože jsme přidali dva plováky dohromady, Python vrátil desetinné číslo s desetinné místo.,
syntaxe pro odčítání je stejné jako u toho, až budete měnit váš operátor z znaménko plus (+
) na mínus (-
):
g = 75.67h = 32print(g - h)
Output43.67
Zde jsme odečetli celé číslo od plováku. Python vrátí plovák, pokud alespoň jedno z čísel zapojených do rovnice je plovák.,
Unární Aritmetické Operace
unární matematický výraz se skládá pouze z jednoho komponentu nebo prvku, a v Python plus a mínus může být použit jako jeden prvek ve dvojici s hodnotu, která vrátí hodnotu identity (+
), nebo změnit znaménko hodnoty (-
).
i když se běžně nepoužívá, znaménko plus označuje totožnost hodnoty., Můžeme použít znaménko plus u kladných hodnot:
i = 3.3print(+i)
Output3.3
Když použijeme znaménko plus záporná hodnota, bude také návrat identity hodnotu, a v tomto případě by bylo negativní hodnotu:
j = -19print(+j)
Output-19
S negativní hodnotou znaménko plus vrátí stejnou zápornou hodnotu.
znaménko mínus alternativně změní znaménko hodnoty., Takže, když jsme se předat pozitivní hodnoty, zjistíme, že znaménko mínus před hodnotou se vrátí zápornou hodnotu:
i = 3.3print(-i)
Output-3.3
Případně, když použijeme znaménko minus, unární operátor s negativní hodnota, kladné hodnoty budou vráceny:
j = -19print(-j)
Output19
unární aritmetické operace indikována znaménkem plus a mínus vrátí buď hodnotu identity v případě +i
, nebo opačné znaménko hodnoty jako v -i
.,
násobení a dělení
jako sčítání a odčítání, násobení a dělení bude vypadat velmi podobně jako v matematice. Znak, který použijeme v Pythonu pro násobení, je *
a znak, který použijeme pro dělení, je /
.,
Tady je příklad toho, dělat násobení v Pythonu s dvěma float hodnoty:
k = 100.1l = 10.1print(k * l)
Output1011.0099999999999
Když vydělíte v Pythonu 3, kvocient bude vždy vrácena jako float, i když používáte dvě celá čísla:
m = 80n = 5print(m / n)
Output16.0
Toto je jedna z hlavních změn mezi Python 2 a Python 3., Python 3 je přístup poskytuje frakční odpověď tak, že při použití /
rozdělit 11
2
kvocient 5.5
, bude vrácena. V Pythonu 2 se kvocient vrátil pro výraz 11 / 2
je 5
.
Python 2, /
provozovatel provádí patře divize,, kde pro kvocient x
počet vrácena, je největší celé číslo menší nebo rovno x
., Pokud spustíte výše uvedený příklad, print(80 / 5)
s Python 2 místo Python 3, dostanete 16
jako výstup bez desetinné místo.
v Pythonu 3 můžete použít//
k provedení dělení podlahy. Výraz 100 // 40
vrátí hodnotu 2
. Rozdělení podlahy je užitečné, když potřebujete kvocient, aby byl v celých číslech.
Modulo
%
operátorem je modulo, které vrací zbytek spíše než kvocient po rozdělení., To je užitečné pro nalezení čísel, která jsou násobky stejného čísla, například.
Pojďme se podívat na modulo v akci:
o = 85p = 15print(o % p)
Output10
zlomit to dolů, 85 děleno 15 se vrací kvocient 5 zbytek 10. Hodnota 10
je to, co je zde vráceno, protože operátor modulo vrací zbytek divizního výrazu.
Pokud budeme používat dva plováky s modulo, float hodnota bude vrátil se na zbytek:
q = 36.0r = 6.0print(o % p)
Output0.0
V případě 36.,0 děleno 6.0, neexistuje žádný zbytek, takže se vrátí hodnota 0.0
.
Power
operátor**
v Pythonu se používá ke zvýšení čísla vlevo na sílu exponentu vpravo. To znamená, že ve výrazu 5 ** 3
je 5 zvýšeno na 3.Výkon. V matematice často vidíme tento výraz vykreslený jako 53 a to, co se skutečně děje, je 5 násobeno samo o sobě 3krát., V Pythonu, dostaneme stejný výsledek, 125
spuštěním buď 5 ** 3
nebo 5 * 5 * 5
.
Pojďme se podívat na příklad s proměnnými:
s = 52.25t = 7print(s ** t)
1063173305051.292
Zvyšování float 52.25
síla 7
**
provozovatel má za následek velké float hodnota vrácena.,
Operátor Přednost
V Pythonu, stejně jako v matematice, musíme mít na paměti, že operátoři budou vyhodnoceny v pořadí, ne zleva doprava nebo zprava doleva.,
Pokud se podíváme na následující výraz:
u = 10 + 10 * 5
Můžeme to číst zleva doprava, ale nezapomeňte, že násobení bude třeba udělat jako první, takže pokud říkáme print(u)
, obdržíme následující hodnoty:
Output60
, protože 10 * 5
vyhodnocuje, aby 50
a pak přidáme 10
vrátit 60
jako konečný výsledek.,
You may be familiar with another acronym for the order of operations, such as BEDMAS or BODMAS., Ať už zkratka funguje nejlépe pro vás, zkuste to mít na paměti při provádění matematických operací v Pythonu tak, aby výsledky, které očekáváte, byly vráceny.
operátory přiřazení
nejčastějším operátorem přiřazení je ten, který jste již použili: znaménko rovná =
. Operátor přiřazení=
přiřadí hodnotu vpravo proměnné vlevo. Například v = 23
přiřadí hodnotu celého čísla 23
proměnné v
.,
Při programování, to je společné použití složené operátory přiřazení, které provádějí operace na hodnotu proměnné a pak přiřadit výsledné nové hodnoty do této proměnné. Tyto složené operátory kombinovat aritmetický operátor s =
provozovatele, tak pro toho budeme kombinovat +
=
získat sloučeniny operátor +=
., Pojďme se podívat, jak to vypadá:
w = 5w += 1print(w)
Output6
za Prvé, jsme se nastavit proměnná w
rovná hodnotě 5
, pak jsme použili +=
složené přiřazovací operátor přidat správné číslo na hodnotu levé proměnné a přiřadit výsledek do w
.,
Složené operátory přiřazení jsou často používány v případě smyček, které budete používat, když budete chtít opakovat proces několikrát:
for x in range (0, 7): x *= 2 print(x)
Output024681012
S pro smyčky, jsme byli schopni automatizovat proces *=
subjekt, který násobí proměnnou w
číslo 2
a pak je přiřazen výsledek v proměnné w
pro další iterace for cyklu.,
Python má složené přiřazovací operátor pro každé aritmetické operátory popsány v tomto návodu:
Složené operátory přiřazení může být užitečné, když se věci musí být postupně zvýšena nebo snížena, nebo když potřebujete automatizovat určité procesy ve vašem programu.
závěr
tento tutoriál zahrnoval mnoho operátorů, které budete používat s celočíselnými a plovákovými číselnými datovými typy. Pokud byste chtěli pokračovat ve čtení o číslech v Pythonu, můžete pokračovat v vestavěných funkcích Python 3 pro práci s čísly.,
Chcete-li se dozvědět více o jiných datových typech, podívejte se na pochopení datových typů v Pythonu 3 a zjistěte, jak převést datové typy čtením převodu datových typů v Pythonu 3.