python iter函式特殊用法

2021-08-08 17:44:55 字數 568 閱讀 8206

python 中迭代物件時會呼叫 iter(x)。

iter 函式還有乙個鮮為人知的用法: 傳入兩個引數, 使用常規的函式或任何可呼叫的物件建立迭代器。

第乙個引數必須是可呼叫的物件,用於不斷呼叫(沒有引數),產出各個值。

第二個值是哨符,這是個標記值, 當可呼叫的物件返回這個值時, 觸發迭代器丟擲 stopiteration 異常,而不產出哨符。

from random import randint

>>> def random_num():

... return randint(1, 6)

...

>>> num = iter(random_num, 1)

>>> num

>>> for i in num:

... print(i)

... 44

6664

這裡iter函式返回乙個callable_iterator物件。1是哨符,物件返回這個值時觸發迭代器丟擲 stopiteration 異常。迴圈結束 與常規的迭代器一樣,示例中的num物件一旦耗盡就沒用了。

mysql 特殊函式 mysql 的特殊函式

1.format 函式 函式用於對字段的顯示進行格式化 語法 select format column name,format from table name column name 必需。要格式化的字段 format 必需。規定格式。2.ucase 函式 ucase 函式把字段的值轉換為大寫。語法...

SQL 特殊函式

1 coalesce 函式 簡介 t sql的coalesce 函式能夠讓你指定多個表示式,而且coalesce 會返回組裡第乙個非空的值。要使用下面的形式,其中expression可以是任何資料型別,並能夠等於大多數合法的表示式 case when expression1 is not null ...

sql 特殊函式

和union指令類似,intersect也是對兩個 sql 語句所產生的結果做處理的。不同的地方是,union基本上是乙個or 如果這個值存在於第一句或是第二句,它就會被選出 而intersect則比較像and 這個值要存在於第一句和第二句才會被選出 union是聯集,而intersect是交集。s...