| Linux – Friheden til at programmere i Python: Version 1.0.20040516 – 2020-12-31 | ||
|---|---|---|
| forrige | Kapitel 2. Sprog reference | næste |
Her er et eksempel på hvorledes man kan teste for forskellige betingelser, og få ens funktioner til at gøre nogle forskellige ting.
>>> def findMax(a,b,c): ... max = a ... if b > a: ... max = b ... if c > b: ... max = c ... return max ... >>> findMax(37, 2 * 19 ,43) 43
>>> tal = 17 ** 4 >>> if tal < 50000: ... print "Tallet er mindre end 50000" ... else: ... print "Tallet er",tal ... Tallet er 83521
If sætningen er måske den bedst kendte sætning (statement)
>>> x = int(raw_input("Skriv et helt tal: "))
>>> if x < 0:
... x = 0
... print 'Negativt tal ændret til nul'
... elif x == 0:
... print 'Nul'
... elif x == 1:
... print 'Et'
... else:
... print 'Større end 1'
...
Der kan være nul eller flere elif blokke, else kan vælges/udelades efter ønske. Nøgleordet "elif" er en forkortelse af "else if" og er praktisk, da der derved er muligt at undgå alt for mange blokindrykninger (de fylder enormt i bredden).
>>> streng = "wqexmjupiolåærdtce45rft6g8ijuplbkilmæø3we45rft6g8ijupl" >>> if len(streng) > 50: ... print "Længden af strengen er større end 50" ... elif len(streng) > 45: ... print "Længden af strengen er større end 45" ... elif len(streng) > 40: ... print "Længden af strengen er større end 40" ... else: ... print "Længden af strengen er:", len(streng) ... Længden af strengen er større end 50
Simulering af terningekast: ALLE variabler i Python SKAL være erklærede, inden de bruges første gang, I det følgende eksempel skal der bruges 6 fordefinerede variabler. Her har Python en speciel og særdeles konstruktiv måde at gøre det på:
f6 = f5 = f4 = f3 = f2 = f1 = 0
I andre om ikke alle andre computersprog skulle det gøres nogenlunde således:
f1 = 0
f2 = 0
f3 = 0
f4 = 0
f5 = 0
f6 = 0
Simulering af terningekast:
>>> import random
>>> f6 = f5 = f4 = f3 = f2 = f1 = 0
>>> for kast in range( 1, 10001 ): # 10.000 terningekast
... udfald = random.randrange( 1, 7 )
... if udfald == 1:
... f1 += 1
... elif udfald == 2:
... f2 += 1
... elif udfald == 3:
... f3 += 1
... elif udfald == 4:
... f4 += 1
... elif udfald == 5:
... f5 += 1
... else:
... f6 += 1
print "Udfald:"
print "Antal enere: ", f1
print "Antal toere: ", f2
print "Antal treere: ", f3
print "Antal firere: ", f4
print "Antal femmere: " ,f5
print "Antal seksere: ", f6
import random
def kastMed2():
terning1 = random.randrange( 1, 7 )
terning2 = random.randrange( 1, 7 )
sumTotal = terning1 + terning2
print "Spiller slog%d + %d = %d" % ( terning1, terning2, sumTotal )
return sumTotal
sum = kastMed2() # første omgang kast
if sum == 7 or sum == 11:
gameStatus = "VANDT"
elif sum == 2 or sum == 3 or sum == 12:
gameStatus = "TABTE"
else: # husker points
gameStatus = "FORTSÆT"
minePoints = sum
print "Spillers points er ", minePoints
while gameStatus == "FORTSÆT": # fortsæt spillet
sum = kastMed2()
if sum == minePoints: # vandt med følgende resultat
gameStatus = "VANDT"
elif sum == 7: # vandt ved at slå/kaste summen 7
gameStatus = "TABTE"
if gameStatus == "VANDT":
print "Spilleren vandt"
else:
print "Spilleren tabte"