0
我正在練習使用itertool.accumulate
函數以及一些循環和ifs。作爲結果,我想列出單個數字(變量稱爲「調用」)和每個週期的總和,它們是3.如何在不清空的情況下兩次打印相同的列表?
現在,我設法得到兩個列表,但不是相同時間。我的意思是,看起來一旦列表打印出來,它就變成空的。我錯過了什麼嗎?我怎樣才能打印這兩個列表?
我打算髮布兩個輸出代碼來展示我的意思。
第一代碼:它打印僅單一數值
import random as rnd
import itertools
# variables
a = 5
b = int(1)
########
calls = (
tuple((itertools.accumulate(
a if a > rnd.randint(1, 10) else -a
for i in range(b)
for j in range(2))
)
)
for cycle in range(3)
)
#######
print(list(calls))
print(list(sum(call) for call in calls))
[(5,0),(-5,-10),(5,0)]
[ ]
第二代碼:它打印僅 隨機導入的值的總和作爲RND 進口itertools
# variables
a = 5
b = int(1)
########
calls = (
tuple((itertools.accumulate(
a if a > rnd.randint(1, 10) else -a
for i in range(b)
for j in range(2))
)
)
for cycle in range(3)
)
#######
print(list(sum(call) for call in calls)
print(list(calls))
[5,-15,5]
[]