Ebben az oktatóanyagban mindent megtudhat a Python különböző típusú operátorairól, azok szintaxisáról és azok használatáról példákkal.
Videó: Operátorok a Pythonban
Melyek a Python operátorai?
Az operátorok a Python speciális szimbólumai, amelyek számtani vagy logikai számítást végeznek. Az operátornak nevezett értéket operandusnak nevezzük.
Például:
>>> 2+3 5
Itt +
van az operátor, amely elvégzi az összeadást. 2
és 3
az operandusok, és 5
a művelet kimenete.
Számtani operátorok
Az aritmetikai operátorokat olyan matematikai műveletek végrehajtására használják, mint összeadás, kivonás, szorzás stb.
Operátor | Jelentése | Példa |
---|---|---|
+ | Adjon hozzá két operandusot vagy unáris pluszt | x + y + 2 |
- | Kivonjuk a jobb operandust a bal vagy az unáris mínuszból | x - y- 2 |
* | Szorozzon két operandusot | x * y |
/ | Oszd meg a bal operandust a jobbal (mindig úszóvá alakul) | x / y |
% | Modulus - a bal operandus jobb felosztásának fennmaradó része | x% y (x / y fennmaradó része) |
// | Emeletosztás - egész számra osztás, amely a számsorban balra igazítva | x // y |
** | Exponent - bal operand a jobb hatalmába emelve | x ** y (x az y teljesítményig) |
1. példa: Számtani operátorok a Pythonban
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)
Kimenet
x + y = 19 x - y = 11 x * y = 60 x / y = 3,75 x // y = 3 x ** y = 50625
Összehasonlító operátorok
Az értékek összehasonlítására összehasonlító operátorokat használnak. Vagy visszatér, True
vagy False
a feltételnek megfelelően.
Operátor | Jelentése | Példa |
---|---|---|
> | Nagyobb, mint - Igaz, ha a bal operandus nagyobb, mint a jobb oldali | x> y |
< | Kevesebb mint - Igaz, ha a bal operandus kisebb, mint a jobb oldali | x <y |
== | Egyenlő - Igaz, ha mindkét operandus egyenlő | x == y |
! = | Nem egyenlő - Igaz, ha az operandusok nem egyenlőek | x! = y |
> = | Nagyobb vagy egyenlő - Igaz, ha a bal operandus nagyobb vagy egyenlő a jobb oldallal | x> = y |
<= | Kevesebb vagy egyenlő - Igaz, ha a bal operandus kisebb vagy egyenlő a jobb oldallal | x <= y |
2. példa: Összehasonlító operátorok a Pythonban
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)
Kimenet
x> y hamis x = y hamis x <= y igaz
Logikai operátorok
Logikai operátorok az and
, or
, not
operátorok.
Operátor | Jelentése | Példa |
---|---|---|
és | Igaz, ha mindkét operandus igaz | x és y |
vagy | Igaz, ha bármelyik operandus igaz | x vagy y |
nem | Igaz, ha az operandus hamis (kiegészíti az operandust) | nem x |
3. példa: Logikai operátorok a Pythonban
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)
Kimenet
x és y hamis x vagy y igaz, nem x hamis
Itt van az igazságtábla ezekre az operátorokra.
Bitenkénti operátorok
A bitenkénti operátorok úgy működnek az operandusokon, mintha bináris számjegyű húrok lennének. Apránként működnek, innen ered a név.
Például 2 10
bináris és 7 van 111
.
Az alábbi táblázatban: Legyen x = 10 ( 0000 1010
bináris) és y = 4 ( 0000 0100
bináris)
Operátor | Jelentése | Példa |
---|---|---|
& | Bitenkénti ÉS | x & y = 0 ( 0000 0000 ) |
| | Bitenként VAGY | x | y = 14 ( 0000 1110 ) |
~ | Bitenként NEM | ~ x = -11 ( 1111 0101 ) |
^ | Bitenként XOR | x y = 14 ( 0000 1110 ) |
>> | Bitenkénti jobb elmozdulás | x >> 2 = 2 ( 0000 0010 ) |
<< | Bitenkénti bal váltás | 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
és not in
tagsági operátorok a Pythonban. Arra használják, hogy teszteljék, van-e érték vagy változó egy szekvenciában (karakterlánc, lista, páros, halmaz és szótár).
Egy szótárban csak a kulcs jelenlétét tesztelhetjük, az értéket nem.
Operátor | Jelentése | Példa |
---|---|---|
ban ben | Igaz, ha az érték / változó megtalálható a sorozatban | 5 x-ben |
nem bent | Igaz, ha az érték / változó nem található a sorozatban | 5 nem x-ben |
5. példa: Tagsági operátorok a Pythonban
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)
Kimenet
Igaz Igaz Igaz Hamis
Itt 'H'
van x-ben, de 'hello'
nincs jelen x-ben (ne feledje, a Python megkülönbözteti a kis- és nagybetűket). Hasonlóképpen 1
kulcs és 'a'
értéke az y szótárban. Ezért 'a' in y
visszatér False
.