Operátorok#

Bevezetés#

A Pythonban az operátorok speciális szimbólumok és kulcsszavak, amelyek lehetővé teszik műveletek végrehajtását értékekkel és változókkal. Számos funkciót foglalnak magukban – a számtani és összehasonlítási műveletektől a logikai, bitenkénti és értékadó műveletekig. Ezen operátorok elsajátítása elengedhetetlen a kifejező és hatékony Python kód létrehozásához, mivel ezek képezik a programok szinte minden számítási vagy döntéshozatali folyamatának alapját. Az alábbiakban tömör példákat talál az egyes operátorokra, amelyek segítenek megérteni a használatukat és a várható eredményeket.

Arithmetic#

Név

Szimbólum

Operátor

Példa

Kiegészítés

+

a + b

5 + 3 # 8

Osztály

/

a / b

10 / 4 # 2.5 (always returns a float)

Hatványozás

**

a ** b

2 ** 3 # 8

Emeletosztás

//

a // b

10 // 4 # 2 (always returns an integer)

Modulo

%

a % b

10 % 4 # 2

Szorzás

*

a * b

5 * 3 # 15

Tagadás

-

- a

- 5 # -5

Kivonás

-

a - b

10 - 3 # 7

Augmented Arithmetic#

Név

Szimbólum

Operátor

Példa

Kiegészítés

+=

a += b

a = 5
b = 3
a += b # a = 8

Osztály

/=

a /= b

a = 10
b = 4
a /= b # a = 2.5

Hatványozás

**=

a **= b

a = 2
b = 3
a **= b # a = 8

Emeletosztás

//=

a //= b

a = 10
b = 4
a //= b # a = 2

Modulus

%=

a %= b

a = 10
b = 3
a %= b # a = 1

Szorzás

*=

a *= b

a = 2
b = 3
a *= b # a = 6

Kivonás

-=

a -= b

a = 10
b = 4
a -= b # a = 6

Comparison#

Név

Szimbólum

Operátor

Példa

Egyenlőség

==

a == b

5 == 5 # True

Egyenlőtlenség

!=

a != b

5 != 10 # True

Nagyobb, mint

>

a > b

10 > 5 # True

Nagyobb vagy egyenlő

>=

a >= b

10 >= 5 # True

Kevesebb, mint

<

a < b

5 < 10 # True

Kisebb vagy egyenlő

<=

a <= b

5 <= 5 # True

Láncolt összehasonlítás

varies

a < b < c

1 < 2 < 3 # True (1 < 2) and (2 < 3)

Logical#

Név

Szimbólum

Példa

Hamis

False

Bizonyos értékek Falseértékűek, beleértve a következőket:

  • None
  • False
  • Tetszőleges típusú numerikus nulla: 0, 0.0, 0j
  • Üres szekvenciák és kollekciók: ‘’ (üres karakterlánc), [] (üres lista), () (üres tuple), {} (üres szótár), set()stb

Igaz

True

Bármely objektum, amely nem explicit módon False értékű, Trueértékűnek tekintendő. Például a nem üres karakterláncok, nem nulla számok, nem üres listák és még az egyéni objektumok is (kivéve, ha felülírják az igazságérték metódusokat Falseértékre) True értékűként lesznek kezelve.


Név

Szimbólum

Operátor

Példa

Identitás

is

a is b

[1] is [1] # False

Nem identitás

is not

a is not b

5 is not 10 # True

Logikai ÉS

and

a and b

True and False # False

Logikai tagadás

not

not a

not False # True

Logikai VAGY

or

a or b

False or True # True

Feltételes kifejezés

if else

x if condition else y

“Yes” if 5 > 3 else “No” # “Yes”

Sequences (Lists, Tuples, Strings)#

Név

Szimbólum

Operátor

Példa

Összefűzés

+

seq1 + seq2

[1, 2] + [3, 4] # [1, 2, 3, 4]

Szelet hozzárendelése

seq[i:j] = values

lst = [1, 2, 3, 4]
lst[1:3] = [20, 30] # lst = [1, 20, 30, 4]

Szelet törlése

del seq[i:j]

lst = [1, 2, 3, 4]
del lst[1:3] # lst = [1, 4]

Szeletelés

seq[i:j]

lst = [1, 2, 3, 4]
lst[1:3] # [2, 3]

Dictionaries (Mappings)#

Név

Szimbólum

Operátor

Példa

Indexelt hozzárendelés

obj[k] = v

d = {}
d[‘a’] = 1 # d = {‘a’: 1}

Indexelt törlés

del obj[k]

d = {‘a’: 1}
del d[‘a’] # d = {}

Indexelés

obj[k]

d = {‘a’: 1}
d[‘a’] # 1

String Formatting#

Név

Szimbólum

Operátor

Példa

Karakterlánc formázása

%

s % obj

str = “Hello, %(name)s” % {“name”: “Alice”} # str = ‘Hello, Alice’

Membership#

Név

Szimbólum

Operátor

Példa

Elszigetelési teszt

in

obj in seq

‘a’ in ‘cat’ # True

Tagsági megtagadás (nincs tag)

not in

a not in b

‘x’ not in ‘hello’ # True

Bitwise#

Név

Szimbólum

Operátor

Példa

Bitenkénti és

&

a & b

6 & 3 # 2 (0b110 & 0b011 = 0b010)

Bitenkénti kizáró vagy (XOR)

^

a ^ b

6 ^ 3 # 5 (0b110 ^ 0b011 = 0b101)

Bitenkénti inverzió (NOT)

~

~ a

~5 # -6 (~0b101 yields -6 in two’s complement)

Bitenkénti vagy

|

a | b

6 | 3 # 7 (0b110 | 0b011 = 0b111)

Balra váltás

<<

a << b

2 << 3 # 16 (0b10 << 3 becomes 0b10000)

Jobbra váltás

>>

a >> b

16 >> 2 # 4 (0b10000 >> 2 becomes 0b100)

Augmented Bitwise#

Név

Szimbólum

Operátor

Példa

Kiterjesztett bitenkénti és

&=

a &= b

a = 6
b = 3
a &= b # a = 2 (0b110 & 0b011 = 0b010)

Kiterjesztett bitenkénti kizáró vagy (XOR)

^=

a ^= b

a = 6
b = 3
a ^= b # a = 5 (0b110 ^ 0b011 = 0b101)

Kiterjesztett bitenkénti vagy

|=

a |= b

a = 6
b = 3
a |= b # a = 7 (0b110 | 0b011 = 0b111)

Kiterjesztett balra váltás

<<=

a <<= b

a = 5
b = 2
a <<= b # a = 20 (5 << 2 equals 5 * 2²)

Kiterjesztett jobbra váltás

>>=

a >>= b

a = 20
b = 2
a >>= b # a = 5 (20 >> 2 equals 20 // 2²)