В тази статия ще научим за твърдение в Python с помощта на assert.
Какво е твърдение?
Твърденията са твърдения, които твърдят или твърдят даден факт уверено във вашата програма. Например, докато пишете функция за деление, вие сте уверени, че делителят не трябва да е нула, вие твърдите, че делителят не е равен на нула.
Твърденията са просто булеви изрази, които проверяват дали условията връщат истина или не. Ако е вярно, програмата не прави нищо и преминава към следващия ред код. Ако обаче е невярно, програмата спира и извежда грешка.
Той също така е инструмент за отстраняване на грешки, тъй като спира програмата при спиране веднага след възникването на грешка и показва в коя точка на програмата е възникнала грешка.
Можем да бъдем ясни, като разгледаме блок-схемата по-долу:

Изявление на Python
Python има вграден assertоператор, който да използва условието за твърдение в програмата. assertизразът има условие или израз, за който се предполага, че винаги е истина. Ако условието е невярно, утвърждаването спира програмата и дава AssertionError.
Синтаксис за използване на Assert в Pyhton:
твърдя
твърдя,
В Python можем да използваме assertизраз по два начина, както беше споменато по-горе.
assertизразът има условие и ако условието не е изпълнено, програмата ще спре и ще дадеAssertionError.assertизраз може също да има условие и незадължително съобщение за грешка. Ако условието не е изпълнено, утвърждаването спира програмата и даваAssertionErrorзаедно със съобщението за грешка.
Да вземем пример, където имаме функция, която ще изчисли средната стойност на стойностите, предадени от потребителя и стойността не трябва да е празен списък. Ще използваме assertоператор за проверка на параметъра и ако дължината е на предадения списък е нула, програмата спира.
Пример 1: Използване на assert без съобщение за грешка
 def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))
Когато стартираме горната програма, изходът ще бъде:
AssertionError
Получихме грешка, когато предадохме празен списък mark1 към assertоператор, състоянието стана невярно и отстояването спира програмата и дава AssertionError.
Сега нека предадем друг списък, който ще задоволи assertусловието и ще видим какъв ще бъде нашият изход.
Пример 2: Използване на assert със съобщение за грешка
 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))
Когато стартираме горната програма, изходът ще бъде:
Средна стойност на mark2: 78.0 AssertionError: Списъкът е празен.
Предадохме непразен списък mark2 и също празен списък mark1 на avg()функцията и получихме изход за списък mark2, но след това получихме грешка AssertionError: List is empty. В assertсъстояние е удовлетворена от списъка с Mark2 и програмата да продължи да се изпълнява. Mark1 обаче не отговаря на условието и дава AssertionError.
Основни моменти, които трябва да запомните
- Твърденията са условие или булев израз, за които винаги се предполага, че са верни в кода.
 assertизраз приема израз и съобщение по избор.assertизраз се използва за проверка на типове, стойности на аргумента и изхода на функцията.assertизраз се използва като инструмент за отстраняване на грешки, тъй като спира програмата в точката, в която възниква грешка.








