Operaattorit#

Johdanto#

Pythonin operaattorit ovat erikoissymboleja ja avainsanoja, joiden avulla voit suorittaa toimintoja arvoille ja muuttujille. Ne kattavat laajan valikoiman toimintoja – aritmeettisista ja vertailuoperaatioista loogisiin, bittikohtaisiin ja sijoitusoperaatioihin. Näiden operaattoreiden hallinta on välttämätöntä ilmaisuvoimaisen ja tehokkaan Python-koodin rakentamiseksi, sillä ne muodostavat lähes jokaisen laskenta- tai päätöksentekoprosessin perustan ohjelmissasi. Alta löydät ytimekkäät esimerkit jokaisesta operaattorista, jotka auttavat sinua ymmärtämään niiden käyttöä ja odotettuja tuloksia.

Arithmetic#

Nimi

Symboli

Operaattori

Esimerkki

Lisäys

+

a + b

5 + 3 # 8

Divisioona

/

a / b

10 / 4 # 2.5 (palauttaa aina liukulukun)

Potenssiin korottaminen

**

a ** b

2 ** 3 # 8

Kerrosjako

//

a // b

10 // 4 # 2 (palauttaa aina kokonaisluvun)

Modulo

%

a % b

10 % 4 # 2

Kertolasku

*

a * b

5 * 3 # 15

Kieltäminen

-

- a

- 5 # -5

Vähennyslasku

-

a - b

10 - 3 # 7

Augmented Arithmetic#

Nimi

Symboli

Operaattori

Esimerkki

Lisäys

+=

a += b

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

Divisioona

/=

a /= b

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

Potenssiin korottaminen

**=

a **= b

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

Kerrosjako

//=

a //= b

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

Modulus

%=

a %= b

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

Kertolasku

*=

a *= b

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

Vähennyslasku

-=

a -= b

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

Comparison#

Nimi

Symboli

Operaattori

Esimerkki

Tasa-arvo

==

a == b

5 == 5 # True

Eriarvoisuus

!=

a != b

5 != 10 # True

Suurempi kuin

>

a > b

10 > 5 # True

Suurempi tai yhtä suuri

>=

a >= b

10 >= 5 # True

Alle

<

a < b

5 < 10 # True

Pienempi tai yhtä suuri kuin

<=

a <= b

5 <= 5 # True

Ketjutettu vertailu

varies

a < b < c

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

Logical#

Nimi

Symboli

Esimerkki

Väärä

False

Tietyt arvot määritellään muotoon False, mukaan lukien:

  • None
  • False
  • Minkä tahansa tyyppinen numeerinen nolla: 0, 0.0, 0j
  • Tyhjät sekvenssit ja kokoelmat: ‘’ (tyhjä merkkijono), [] (tyhjä lista), () (tyhjä tuple), {} (tyhjä sanakirja), set()jne.

Totta

True

Kaikkia objekteja, jotka eivät ole eksplisiittisesti False käsitellään True-arvoina. Esimerkiksi ei-tyhjiä merkkijonoja, ei-nolla-lukuja, ei-tyhjiä listoja ja jopa mukautettuja objekteja (elleivät ne korvaa totuusarvometodeja palauttamaan False) käsitellään True -arvoina.


Nimi

Symboli

Operaattori

Esimerkki

Identiteetti

>is

a is b

[1] is [1] # False

Ei identiteetti

is not

a is not b

5 is not 10 # True

Looginen JA

and

a and b

True and False # False

Looginen negaatio

not

not a

not False # True

Looginen TAI

or

a or b

False or True # True

Ehdollinen lauseke

if else

x if condition else y

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

Sequences (Lists, Tuples, Strings)#

Nimi

Symboli

Operaattori

Esimerkki

Yhdistäminen

+

seq1 + seq2

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

Viipaleen määritys

seq[i:j] = values

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

Viipaleen poisto

del seq[i:j]

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

Viipalointi

seq[i:j]

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

Dictionaries (Mappings)#

Nimi

Symboli

Operaattori

Esimerkki

Indeksoitu tehtävä

obj[k] = v

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

Indeksoitu poisto

del obj[k]

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

Indeksointi

obj[k]

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

String Formatting#

Nimi

Symboli

Operaattori

Esimerkki

Merkkijonojen muotoilu

%

s % obj

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

Membership#

Nimi

Symboli

Operaattori

Esimerkki

Suojautumistesti

in

obj in seq

‘a’ in ‘cat’ # True

Jäsenyyden hylkääminen (ei sisällä)

not in

a not in b

‘x’ not in ‘hello’ # True

Bitwise#

Nimi

Symboli

Operaattori

Esimerkki

Bittikohtainen ja

&

a & b

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

Bittikohtainen eksklusiivinen tai (XOR)

^

a ^ b

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

Bittikohtainen inversio (EI)

~

~ a

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

Bittikohtainen tai

|

a | b

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

Vasen vaihto

<<

a << b

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

Oikea vaihto

>>

a >> b

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

Augmented Bitwise#

Nimi

Symboli

Operaattori

Esimerkki

Lisätty bittikohtainen ja

&=

a &= b

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

Laajennettu bittikohtainen eksklusiivinen tai (XOR)

^=

a ^= b

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

Lisätty bittikohtainen tai

|=

a |= b

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

Lisätty vasen siirto

<<=

a <<= b

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

Lisätty oikealle siirtyminen

>>=

a >>= b

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