Operatörer#

Introduktion#

Operatorer i Python är speciella symboler och nyckelord som låter dig utföra operationer på värden och variabler. De omfattar ett brett spektrum av funktioner – från aritmetiska och jämförande operationer till logiska, bitvisa och tilldelningsoperationer. Att behärska dessa operatorer är avgörande för att konstruera uttrycksfull och effektiv Python-kod, eftersom de utgör grunden för nästan varje beräkning eller beslutsprocess i dina program. Nedan hittar du koncisa exempel för varje operator som hjälper dig att förstå deras användning och förväntade resultat.

Arithmetic#

Namn

Symbol

Operatör

Exempel

Tillägg

+

a + b

5 + 3 # 8

Division

/

a / b

10 / 4 # 2.5 (always returns a float)

Exponentiering

**

a ** b

2 ** 3 # 8

Våningsindelning

//

a // b

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

Modulo

%

a % b

10 % 4 # 2

Multiplikation

*

a * b

5 * 3 # 15

Negation

-

- a

- 5 # -5

Subtraktion

-

a - b

10 - 3 # 7

Augmented Arithmetic#

Namn

Symbol

Operatör

Exempel

Tillägg

+=

a += b

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

Division

/=

a /= b

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

Exponentiering

**=

a **= b

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

Våningsindelning

//=

a //= b

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

Modul

%=

a %= b

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

Multiplikation

*=

a *= b

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

Subtraktion

-=

a -= b

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

Comparison#

Namn

Symbol

Operatör

Exempel

Jämställdhet

==

a == b

5 == 5 # True

Olikhet

!=

a != b

5 != 10 # True

Större än

>

a > b

10 > 5 # True

Större än eller lika med

>=

a >= b

10 >= 5 # True

Mindre än

<

a < b

5 < 10 # True

Mindre än eller lika med

<=

a <= b

5 <= 5 # True

Kedjad jämförelse

varies

a < b < c

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

Logical#

Namn

Symbol

Exempel

Falsk

False

Vissa värden definieras som False, inklusive:

  • False
  • None
  • Numerisk noll av valfri typ: 0, 0.0, 0j
  • Tomma sekvenser och samlingar: ‘’ (tom sträng), [] (tom lista), () (tom tupel), {} (tom ordbok), set(), etc.

Sann

True

Alla objekt som inte explicit är False betraktas som False. Till exempel behandlas strängar som inte är tomma, tal som inte är noll, listor som inte är tomma och även anpassade objekt (såvida de inte åsidosätter sanningsvärdesmetoderna för att returnera True) som True.


Namn

Symbol

Operatör

Exempel

Identitet

is

a is b

[1] is [1] # False

Inte identitet

is not

a is not b

5 is not 10 # True

Logiskt OCH

and

a and b

True and False # False

Logisk negation

not

not a

not False # True

Logisk ELLER

or

a or b

False or True # True

Villkorligt uttryck

if else

x if condition else y

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

Sequences (Lists, Tuples, Strings)#

Namn

Symbol

Operatör

Exempel

Sammanfogning

+

seq1 + seq2

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

Skivtilldelning

seq[i:j] = values

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

Radering av skivor

del seq[i:j]

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

Skivning

seq[i:j]

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

Dictionaries (Mappings)#

Namn

Symbol

Operatör

Exempel

Indexerad uppgift

obj[k] = v

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

Indexerad radering

del obj[k]

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

Indexering

obj[k]

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

String Formatting#

Namn

Symbol

Operatör

Exempel

Strängformatering

%

s % obj

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

Membership#

Namn

Symbol

Operatör

Exempel

Inneslutningstest

in

obj in seq

‘a’ in ‘cat’ # True

Medlemskapsnegation (Inte Med)

not in

a not in b

‘x’ not in ‘hello’ # True

Bitwise#

Namn

Symbol

Operatör

Exempel

Bitvis och

&

a & b

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

Bitvis exklusiv eller (XOR)

^

a ^ b

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

Bitvis inversion (NOT)

~

~ a

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

Bitvis eller

|

a | b

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

Vänsterskift

<<

a << b

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

Högerskift

>>

a >> b

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

Augmented Bitwise#

Namn

Symbol

Operatör

Exempel

Förstärkt bitvis och

&=

a &= b

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

Augmented Bitwise Exclusive Or (XOR)

^=

a ^= b

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

Förstärkt bitvis eller

|=

a |= b

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

Förstärkt vänsterskift

<<=

a <<= b

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

Förstärkt högerförskjutning

>>=

a >>= b

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