V tej vadnici boste izvedeli vse o različnih vrstah operaterjev v Pythonu, njihovi skladnji in kako jih lahko uporabite s primeri.
Video: Operaterji v Pythonu
Kaj so operaterji v pythonu?
Operaterji so posebni simboli v Pythonu, ki izvajajo aritmetične ali logične izračune. Vrednost, s katero operater deluje, se imenuje operand.
Na primer:
>>> 2+3 5
Tu +
je operater, ki izvaja seštevanje. 2
in 3
so operandi in 5
je rezultat operacije.
Aritmetični operatorji
Aritmetični operatorji se uporabljajo za izvajanje matematičnih operacij, kot so seštevanje, odštevanje, množenje itd.
Operater | Pomen | Primer |
---|---|---|
+ | Dodajte dva operanda ali unarski plus | x + y + 2 |
- | Odštejte desni operand od levega ali enostavnega minusa | x - y - 2 |
* | Pomnožite dva operanda | x * y |
/ | Delite levi operand z desnim (vedno se spremeni v float) | x / y |
% | Modul - ostanek delitve levega operanda na desni | x% y (ostanek x / y) |
// | Delitev tal - delitev, ki ima za posledico celo število, prilagojeno levo v številčni vrstici | x // y |
** | Eksponent - levi operand dvignjen v moč desnega | x ** y (x do moči y) |
Primer 1: Aritmetični operatorji v Pythonu
x = 15 y = 4 # Output: x + y = 19 print('x + y =',x+y) # Output: x - y = 11 print('x - y =',x-y) # Output: x * y = 60 print('x * y =',x*y) # Output: x / y = 3.75 print('x / y =',x/y) # Output: x // y = 3 print('x // y =',x//y) # Output: x ** y = 50625 print('x ** y =',x**y)
Izhod
x + y = 19 x - y = 11 x * y = 60 x / y = 3,75 x // y = 3 x ** y = 50625
Primerjalni operaterji
Za primerjavo vrednosti se uporabljajo operatorji primerjave. To vrne bodisi True
ali False
glede na stanje.
Operater | Pomen | Primer |
---|---|---|
> | Večje od - True, če je levi operand večji od desnega | x> y |
< | Manj kot - True, če je levi operand manjši od desnega | x <y |
== | Enako - True, če sta oba operanda enaka | x == y |
! = | Ni enako - True, če operandi niso enaki | x! = y |
> = | Večje ali enako - True, če je levi operand večji ali enak desnemu | x> = y |
<= | Manj ali enako - True, če je levi operand manjši ali enak desnemu | x <= y |
Primer 2: Primerjalni operaterji v Pythonu
x = 10 y = 12 # Output: x> y is False print('x> y is',x>y) # Output: x < y is True print('x < y is',x= y is False print('x>= y is',x>=y) # Output: x <= y is True print('x <= y is',x<=y)
Izhod
x> y je napačno x = y je napačno x <= y je res
Logični operaterji
Logični operatorji so and
, or
, not
operaterji.
Operater | Pomen | Primer |
---|---|---|
in | Res, če sta oba operanda resnična | x in y |
ali | True, če je kateri od operandov resničen | x ali y |
ne | True, če je operand false (dopolnjuje operand) | ne x |
Primer 3: Logični operaterji v Pythonu
x = True y = False print('x and y is',x and y) print('x or y is',x or y) print('not x is',not x)
Izhod
x in y je napačno x ali y je res ni x ni napačno
Tu je tabela resnic za te operaterje.
Bitni operaterji
Bit-operatorji delujejo na operande, kot da bi bili nizi binarnih številk. Delujejo po malo, od tod tudi ime.
Na primer, 2 je 10
v binarni obliki in 7 je 111
.
V spodnji tabeli: Naj bo x = 10 ( 0000 1010
v binarni obliki) in y = 4 ( 0000 0100
v binarni obliki)
Operater | Pomen | Primer |
---|---|---|
& | Bitovno AND | x & y = 0 ( 0000 0000 ) |
| | Bitovno ALI | x | y = 14 ( 0000 1110 ) |
~ | Bitno NE | ~ x = -11 ( 1111 0101 ) |
^ | Bitno XOR | x y = 14 ( 0000 1110 ) |
>> | Preklop v desno | x >> 2 = 2 ( 0000 0010 ) |
<< | Preklop v levo | x << 2 = 40 (0010 1000 ) |
Assignment operators
Assignment operators are used in Python to assign values to variables.
a = 5
is a simple assignment operator that assigns the value 5 on the right to the variable a on the left.
There are various compound operators in Python like a += 5
that adds to the variable and later assigns the same. It is equivalent to a = a + 5
.
Operator | Example | Equivalent to |
---|---|---|
= | x = 5 | x = 5 |
+= | x += 5 | x = x + 5 |
-= | x -= 5 | x = x - 5 |
*= | x *= 5 | x = x * 5 |
/= | x /= 5 | x = x / 5 |
%= | x %= 5 | x = x % 5 |
//= | x //= 5 | x = x // 5 |
**= | x **= 5 | x = x ** 5 |
&= | x &= 5 | x = x & 5 |
|= | x |= 5 | x = x | 5 |
^= | x ^= 5 | x = x 5 |
>>= | x>>= 5 | x = x>> 5 |
<<= | x <<= 5 | x = x << 5 |
Special operators
Python language offers some special types of operators like the identity operator or the membership operator. They are described below with examples.
Identity operators
is
and is not
are the identity operators in Python. They are used to check if two values (or variables) are located on the same part of the memory. Two variables that are equal does not imply that they are identical.
Operator | Meaning | Example |
---|---|---|
is | True if the operands are identical (refer to the same object) | x is True |
is not | True if the operands are not identical (do not refer to the same object) | x is not True |
Example 4: Identity operators in Python
x1 = 5 y1 = 5 x2 = 'Hello' y2 = 'Hello' x3 = (1,2,3) y3 = (1,2,3) # Output: False print(x1 is not y1) # Output: True print(x2 is y2) # Output: False print(x3 is y3)
Output
False True False
Here, we see that x1 and y1 are integers of the same values, so they are equal as well as identical. Same is the case with x2 and y2 (strings).
But x3 and y3 are lists. They are equal but not identical. It is because the interpreter locates them separately in memory although they are equal.
Membership operators
in
in not in
so operaterji članstva v Pythonu. Uporabljajo se za preizkušanje, ali je v zaporedju (niz, seznam, nabor, nabor in slovar) najdena vrednost ali spremenljivka.
V slovarju lahko preizkusimo samo prisotnost ključa, ne pa tudi vrednosti.
Operater | Pomen | Primer |
---|---|---|
v | True, če je v zaporedju najdena vrednost / spremenljivka | 5 v x |
ni notri | True, če vrednosti / spremenljivke ni mogoče najti v zaporedju | 5 ni v x |
Primer # 5: Članski operaterji v Pythonu
x = 'Hello world' y = (1:'a',2:'b') # Output: True print('H' in x) # Output: True print('hello' not in x) # Output: True print(1 in y) # Output: False print('a' in y)
Izhod
True True True False
Tukaj 'H'
je v x 'hello'
, ni pa v x (ne pozabite, da je Python občutljiv na velike in male črke). Podobno 1
je ključ in 'a'
vrednost v slovarju y. Zato se 'a' in y
vrne False
.