# 列表生成式
# lt = [i for i in range(10)]
# 生成器方式1:將列表生成式的改為()
lt = (i for i in range(3))
# 可以轉換為列表
# print(list(lt))
# 可以進行遍歷
# for i in lt:
# print(i, end=' ')
# 可以乙個乙個提取,當遍歷完畢後再使用next會報stopiteration錯
print(next(lt))
print(next(lt))
print(next(lt))
def
test
(n):
for i in range(1, n+1):
# 執行到此處,函式會返回yield後的值,然後停在這裡
yield i
t = test(3)
# print(t)
# 可以使用next乙個乙個提取
# print(next(t))
# print(next(t))
# print(next(t))
# print(next(t))
# 可以遍歷
# for i in t:
# print(i)
# 可以轉換為列表
print(list(t))
總結:
from collections import iterator
# lt = [i for i in range(10)]
lt = (i for i in range(10))
print(isinstance(lt, iterator))
判斷:乙個物件是否可迭代
from collections import iterable
lt = [1, 2, 3]
print(isinstance(lt, iterable))
iter:將可迭代物件轉換為迭代器
from collections import iterable, iterator
lt = [1, 2, 3]
# 將乙個可迭代物件轉換為迭代器
lt = iter(lt)
print(isinstance(lt, iterable))
print(isinstance(lt, iterator))
func:乙個函式
iter1:乙個可迭代物件
from collections import iterator
lt = [1, 2, 3, 4, 5]
defpingfang
(x):
return x * x
# 返回乙個迭代器
ret = map(pingfang, lt)
# ret = map(lambda x: 2 * x, lt)
print(isinstance(ret, iterator))
print(list(ret))
filter
function:過濾函式
iterable:可迭代物件
lt = [1, 2, 3, 4, 5]
defoushu
(x):
return x%2 == 0
# f = filter(oushu, lt)
f = filter(lambda x: x%2 != 0, lt)
print(list(f))
reduce
function:處理函式
sequence:序列(容器物件)
1.首先從序列中取出兩個元素,作為處理函式的引數
2.處理完的結構與下乙個元素進行使用處理函式處理
3.處理結束,將處理完的結果返回
from functools import reduce
lt = [1, 2, 3, 4, 5]
defadd
(a, b):
return a + b
# ret = reduce(add, lt)
# 轉換為12345
ret = reduce(lambda x, y: x * 10 + y, lt)
print(ret)
sorted
使用遞迴,完成傳入n,返回1! + 2! + 3! + ... + n!
python 07(函式的使用)
8 19 2019 1 14 周一 匿名函式 res lambda x x 1 lambda是匿名函式的定義其中res接受的是位址。其中x表示的是輸入值。print res 10 匿名函式裡面是簡單的語句,不能加複雜的邏輯結構。把函式當成引數傳遞給另乙個函式,如果沒有返回值,則返回none 返回值也...
Python基礎07 函式
函式最重要的目的是方便我們重複使用相同的一段程式。將一些操作隸屬於乙個函式,以後你想實現相同的操作的時候,只用呼叫函式名就可以,而不需要重複敲所有的語句。函式的定義 首先,我們要定義乙個函式,以說明這個函式的功能。def square sum a,b c a 2 b 2 return c 這個函式的...
07庫函式編寫
1 字串查詢 給定乙個字串a,要求在a中查詢乙個子串b。如a abcdf 要你在a中查詢子串b cd 初步 如下 int strstr char string,char substring if j lensub return i 1 return 1 針對這個strstr的函式,我覺得有點小問題。...