| 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"