Python學習記錄 assert(斷言)

2021-10-07 11:47:45 字數 1274 閱讀 6037

python中assert(斷言)用於判斷乙個表示式,在表示式條件為 false 時觸發異常。

assert可以在條件不滿足程式執行的情況下直接返回錯誤,而不必等待程式執行後出現崩潰的情況。例如我們的**只能在 linux 系統下執行,可以先判斷當前系統是否符合條件:

語法如下:

assert expression

...... # 條件為false時執行此處的語句

等價於:

if not expression:

raise assertionerror

assert 後面也可以緊跟引數:

assert expression [, arguments]
等價於:

if not expression:

raise assertionerror(arguments)

python中raise用來丟擲異常。

以下為 assert 使用例項:

>>> assert true     # 條件為 true 正常執行

>>> assert false # 條件為 false 觸發異常

traceback (most recent call last):

file "", line 1, in assertionerror

>>> assert 1==1 # 條件為 true 正常執行

>>> assert 1==2 # 條件為 false 觸發異常

traceback (most recent call last):

file "", line 1, in assertionerror

>>> assert 1==2, '1 不等於 2'

traceback (most recent call last):

file "", line 1, in assertionerror: 1 不等於 2

assert可以在條件不滿足程式執行的情況下直接返回錯誤,而不必等待程式執行後出現崩潰的情況。

例如我們的**只能在 linux 系統下執行,可以先判斷當前系統是否符合條件,如果不滿足條件則直接觸發異常,不必執行接下來的**:

import sys

assert ('linux' in sys.platform), "該**只能在 linux 下執行"

# 接下來要執行的**

python學習記錄

python 3 整除,複數表示,slice,range,pass關鍵字,函式用引數名呼叫,函式的 arg和 arg,預設引數,unpacking argument lists,sequence 型別 list,set tuple,dictionary,queue,stack loop相關 enum...

python學習記錄

python函式記錄 修飾符作用就是表示 下面的值或者函式作為 後面函式的引數 返回值由 後面的函式返回 map 接收乙個函式和乙個序列,然後保留函式返回的結果的序列 reduce 接收乙個函式和乙個序列 函式結果為乙個值,運算過程就是從序列的第乙個值開始傳給函式,返回結果再次傳入函式,直到最後得到...

python學習記錄

函式的作用 按照key對迭代器iterable進行分組 函式的返回 tuple,其中第乙個元素是groupby後的鍵值,第二個元素是乙個迭代器,包含那些被groupby的物件。第二個引數key是可選的,如果預設,那就按照iterable的每個元素分組。如果不預設,那應該是乙個函式,將iterable...