def gen():
for n in range(12):
yield n ** 2
G1 = (n ** 2 for n in range(12))
G2 = gen()
print(*G1)
print(*G2)
print(list(G1))
print(list(G2))
# 輸出:
# 0 1 4 9 16 25 36 49 64 81 100 121
# 0 1 4 9 16 25 36 49 64 81 100 121
# []
# []
uj5u.com熱心網友回復:
*,可以用來收集和分配引數。G1是一個生成器物件,*G1可以將其中的所有引數提取出來,分配給print()。uj5u.com熱心網友回復:
你就當它是取地址的方法用就行了,具體實作不用管,都是具有矢代特性就可以這樣用uj5u.com熱心網友回復:
# 那這些具有迭代特性的型別,是不是只能迭代一次呀!
def gen():
for n in range(12):
yield n ** 2
G1 = (n ** 2 for n in range(12))
G2 = gen()
print(*G1)
print(*G2)
print(list(G1))
print(list(G2))
for i in G1:
print(i)
for j in G2:
print(j)
print(*G1)
print(*G2)
print(list(G1))
print(list(G2))
for i in G1:
print(i)
for j in G2:
print(j)
# 輸出:
# 0 1 4 9 16 25 36 49 64 81 100 121
# 0 1 4 9 16 25 36 49 64 81 100 121
# []
# []
# []
# []
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/132403.html
