Ebben a cikkben megtudhatjuk az állítást a Pythonban az assert használatával.
Mi az állítás?
Az állítások olyan állítások, amelyek magabiztosan állítanak vagy állítanak tényt a programban. Például, miközben osztási függvényt ír, biztos abban, hogy az osztónak nem szabad nulla lennie, azt állítja, hogy az osztó nem egyenlő nullával.
Az állítások egyszerűen logikai kifejezések, amelyek ellenőrzik, hogy a feltételek igazak-e vagy sem. Ha igaz, a program nem tesz semmit, és a következő kódsorra lép. Ha azonban hamis, akkor a program leáll és hibát dob.
Ez egy hibakereső eszköz is, mivel leállítja a programot, amint bármilyen hiba bekövetkezik, és megmutatja, hogy a program mely pontján történt.
Az alábbi folyamatábra megnézésével egyértelműek lehetünk:
Python állítás
A Python beépített assert
utasítással rendelkezik az állítás feltétel használatára a programban. assert
az állításnak van olyan feltétele vagy kifejezése, amely állítólag mindig igaz. Ha a feltétel hamis, az állítás leállítja a programot, és egy értéket ad AssertionError
.
Szintaxis az Assert Pyhtonban használatához:
állítják
állítani,
A Pythonban az assert
utasításokat kétféleképpen használhatjuk, amint azt fentebb említettük.
assert
utasításnak van feltétele, és ha a feltétel nem teljesül, a program leáll és adAssertionError
.assert
utasításnak lehet feltétele és opcionális hibaüzenete is. Ha a feltétel nem teljesül, az assert leállítja a programot, ésAssertionError
a hibaüzenettel együtt ad .
Vegyünk egy példát, ahol van egy olyan függvényünk, amely kiszámítja a felhasználó által átadott értékek átlagát, és az érték nem lehet üres lista. Az assert
utasítás segítségével ellenőrizzük a paramétert, és ha a megadott lista hossza nulla, akkor a program leáll.
1. példa: Az assert használata hibaüzenet nélkül
def avg(marks): assert len(marks) != 0 return sum(marks)/len(marks) mark1 = () print("Average of mark1:",avg(mark1))
A fenti program futtatásakor a kimenet a következő lesz:
AssertionError
Hibát kaptunk, amikor egy üres list1 jelet adtunk át az assert
utasításnak, a feltétel hamis lett, és az állítás leállítja a programot és az adást AssertionError
.
Most assert
adjunk át egy másik listát, amely kielégíti a feltételt, és megnézzük, mi lesz a kimenetünk.
2. példa: Assert használata hibaüzenettel
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))
A fenti program futtatásakor a kimenet a következő lesz:
Mark2 átlaga: 78.0 AssertionError: A lista üres.
Átadtunk egy nem üres list2 jelet és egy üres lista mark1 -t is a avg()
függvénynek, és kimenetet kaptunk a mark2 listához, de utána hibát kaptunk AssertionError: List is empty
. A assert
feltételt a mark2 lista és a program tovább futtatta. A mark1 azonban nem felel meg a feltételnek, és ad egy AssertionError
.
Kulcsfontosságú megjegyzendő pontok
- Az állítások az a feltétel vagy logikai kifejezés, amelynek állítólag mindig igaznak kell lennie a kódban.
assert
utasítás egy kifejezést és egy választható üzenetet vesz fel.assert
utasítás a típusok, argumentumértékek és a függvény kimenetének ellenőrzésére szolgál.assert
utasítás hibakereső eszközként használatos, mivel leállítja a programot azon a ponton, ahol hiba lép fel.