簡體   English   中英

如何編寫枚舉循環

[英]How to write a enumerate loop

我想知道是否可以運行枚舉循環,如下所示

int_term = [scipy.quad(t_x,x0,i)[0] for i in enumerate(x_vals)]

還是我們必須這樣寫

for i in enumerate(x_vals)

希望這可以澄清 enumerate 的確切作用:

>>> list(enumerate('abc'))
[(0, 'a'), (1, 'b'), (2, 'c')]

它只是將您的列表變成一對列表,其中每個元素都與索引連接,即a與 0, b與 1 和c與 2。

這並不完全正確,因為它是一個迭代器而不是一個實際的列表——所以當你包裝另一個迭代器時它會懶惰地為你提供值。

因此,循環它與任何其他列表相同,但通常以以下方式完成:

for i, x in enumerate(xs)

你仍然可以使用:

for i in enumerate(xs)

但隨后只知道 i 將成為一個帶有一些 int 的元組,以及一些來自xs的 object 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM