“Påståenden” (statements)

Ett påstående (statement) är en fullständig instruktion som utför någon form av åtgärd, uppdaterar eller producerar en “effekt”. Detta kan inkludera tilldelning till variabler, vissa funktionsanrop, villkorssatser och dylikt. Varje enskilt påstående avslutas med en ny rad eller ett semikolon. Vi har redan sett exempel på tre sorters påståenden i tidigare kapitel i nyttjandet av print() och tilldelning.

# Assignment of a value to a variable
assignment = "A value"      

# Call to the print function to show the value of 'assignment'
print(assignment)           

# Conditional statement to check if the value of 'assignment' is "A value"
if assignment == "A value": 
    print("This is true") 
A value
This is true

Statements

När du skriver ett påstående i din Python-fil och sedan kör koden via Visual Studio Code (alt. kör koden direkt genom terminalen) så kommer Python att tolka koden och visa eventuella resultat. Vi skriver “eventuella resultat” då exempelvis tilldelning i sig självt inte kommer att generera någon output, om inte variabeln efter tilldelningen skrivs ut med hjälp av t.ex. print()-funktionen.

assignment = "A value"  # Nothing happens, in terms of output

print(assignment)       # The value of 'assignment' is printed
A value

Ett Python-skript innehåller generellt sett en sekvens av påståenden. Om det finns mer än ett påstående (med tillhörande utskrift) så kommer resultaten att visas ett i taget allteftersom att resp. påstående tolkas/körs - vilket alltid sker i en hierarkisk ordning (d.v.s. från påståendet på den första kodraden till påståendet på den sista kodraden).

number = 10
print(number)
number = 20
number = 30
print(number)           # Will not print 20 since we've overwritten that value
10
30

“Uttryck” (expressions)

Ett uttryck är en kombination av värden, variabler, operatorer (exempelvis matematiska operatorer såsom +, -, etc.) och vissa funktionsanrop (de som resulterar i att något utvärderas) som kan utvärderas till ett enskilt värde. Detta innebär att varje uttryck har ett värde, vilket skiljer det från ett påstående som inte nödvändigtvis måste generera ett värde. Om du exempelvis skriver uttrycket 2 + 2 så kommer tolken att tolka och visa resultatet:

>>> 2 + 2
4

Expressions

Ett uttryck som sådant måste dock inte innehålla värden, variabler såväl som operatorer för att klassas som ett uttryck. Ett värde eller en variabel i sig kan exempelvis evalueras som ett uttryck:

>>> 10
>>> number = 5
>>> number
10
5

Skillnaden mellan påståenden och uttryck

Ett enkelt sätt att skilja mellan ett påstående och ett uttryck är att ett uttryck kan visas eller utvärderas till ett värde, medan ett påstående utför en handling. I många fall är uttryck således en del av påståenden. Vid tilldelning är exempelvis det som finns på höger sida om tilldelningstecknet ett uttryck och hela raden istället utgör ett påstående.

# The entire row is a statement, 10 is an expression
number = 10

# Using an expression within a print-statement is also possible
print(number + 5)
15

Detta kan även förtydligas genom att särskilja utvärderingen av en variabel från utskriften av en varibel enligt:

>>> hello = "Hello, world!"
>>> hello
>>> print(hello)
'Hello, world!'
Hello, world!

Här ser utskriften annorlunda ut för de två olika tillvägagångssätten då när vi enbart anger variabeln så kommer värdet skrivas ut representerat som den datatyp det lagrats som i variabeln. print() kommer istället enbart att skriva ut det faktiska värdet.

Tydliggörande: Tilldelning som påstående

Ett tydligt exempel på ett påstående är en tilldelning. Raden nedan utför exempelvis en handling genom att den binder namnet number till värdet 10.

number = 10

Själva värdet 10 är dock i sig självt ett uttryck, eftersom det kan utvärderas till ett värde. Hela raden number = 10 är däremot ett påstående - eftersom den utför en instruktion i programmet.

number = 10         # the entire row makes up a statement
print(number + 5)
15

I raden print(number + 5) är number + 5 ett uttryck som först utvärderas till 15. Därefter används print() för att skriva ut resultatet - på så vis kan uttryck alltså ingå som delar av påståenden.

print() används primärt för sin effekt - att skriva ut något i terminalen. Funktionen har egentligen också ett returvärde, None, men det är normalt inte relevant när vi använder print() i början av kursen.

Sammanfattning

Förståelsen för påståenden och uttryck är fundamentala för alla som lär sig programmera, eftersom de ligger till grund för hur vi bygger upp och strukturerar vår kod. Korrekt användning av påståenden och uttryck är således avgörande för att skriva tydlig och effektiv kod. Denna distinktion hjälper också programmerare att förstå hur data manipuleras och hanteras genom programmets flöde.


This site uses Just the Docs, a documentation theme for Jekyll.