Python Assert Statement

I den här artikeln kommer vi att lära oss om påståenden i Python med hjälp av assert.

Vad är påstående?

Påståenden är uttalanden som hävdar eller anger ett faktum säkert i ditt program. När du till exempel skriver en delningsfunktion är du säker på att delaren inte ska vara noll, du hävdar att delaren inte är lika med noll.

Påståenden är helt enkelt booleska uttryck som kontrollerar om villkoren blir sanna eller inte. Om det är sant gör programmet ingenting och flyttar till nästa kodrad. Men om det är falskt stannar programmet och ger ett fel.

Det är också ett felsökningsverktyg eftersom det stoppar programmet så fort något fel inträffar och visar på vilken punkt i programfelet som har inträffat.

Vi kan vara tydliga genom att titta på flödesschemat nedan:

Python hävdar uttalande

Python har inbyggt assertuttalande för att använda påståendebetingelser i programmet. assertuttalande har ett villkor eller uttryck som alltid ska vara sant. Om villkoret är falskt hävdar programmet att programmet ger ett AssertionError.

Syntax för att använda Assert i Pyhton:

 hävda 
 hävda,

I Python kan vi använda assertuttalande på två sätt som nämnts ovan.

  1. assertuttalande har ett villkor och om villkoret inte är uppfyllt stannar programmet och ger AssertionError.
  2. assertuttalande kan också ha ett villkor och ett valfritt felmeddelande. Om villkoret inte är uppfyllt stoppar assert programmet och ger AssertionErrortillsammans med felmeddelandet.

Låt oss ta ett exempel där vi har en funktion som beräknar medelvärdet av de värden som skickats av användaren och värdet inte ska vara en tom lista. Vi kommer att använda assertuttalande för att kontrollera parametern och om längden på den godkända listan är noll, stoppas programmet.

Exempel 1: Använda assert utan felmeddelande

 def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))

När vi kör ovanstående program blir resultatet:

 Påstående Fel

Vi fick ett fel när vi skickade en tom listmark1 till assertuttalande, villkoret blev falskt och hävdade stoppar programmet och ger AssertionError.

Låt oss nu skicka en annan lista som uppfyller assertvillkoret och se vad som kommer att bli vår produktion.

Exempel 2: Använd assert med felmeddelande

 def avg(marks): assert len(marks) != 0,"List is empty." return sum(marks)/len(marks) mark2 = (55,88,78,90,79) print("Average of mark2:",avg(mark2)) mark1 = () print("Average of mark1:",avg(mark1))

När vi kör ovanstående program blir resultatet:

 Genomsnitt av mark2: 78.0 AssertionError: Listan är tom.

Vi skickade en icke-tom listmark2 och även en tom listmark1 till avg()funktionen och vi fick utdata för mark2-listan men efter det fick vi ett fel AssertionError: List is empty. Det assertvillkoret uppfylls av MARK2 listan och program för att fortsätta att köra. Mark1 uppfyller dock inte villkoret och ger ett AssertionError.

Viktiga punkter att komma ihåg

  • Påståenden är villkoret eller det booleska uttrycket som alltid ska vara sant i koden.
  • assert uttalande tar ett uttryck och ett valfritt meddelande.
  • assert uttalande används för att kontrollera typer, argumentvärden och funktionens funktion.
  • assert uttalande används som felsökningsverktyg eftersom det stoppar programmet vid den punkt där ett fel uppstår.

Intressanta artiklar...