[英]Trying to understand complex function
我正在做這個 AI 項目,我需要創建一個包含任意 5 個連續數字的數組。 例如 [[[1],[2],[3],[4],[5]]]。 幸運的是,我正在關注一個教程並得到了這一行: Data = [[[i+j] for i in range(5)] for j in range(100)]
。 我想知道這意味着什么。 我對 Python 有深入的了解,但從未使用過這種類型的符號。
編碼
Data = [[[i+j] for i in range(5)] for j in range(100)]
可以切成兩塊:
[[i+j] for i in range(5)]
和
[[[i+j] for i in range(5)] for j in range(100)]
它們都包含一個列表推導。 讓我們評估第一個。
[[i+j] for i in range(5)]
這類似於:
elements = []
for i in range(5):
elements.append([i + j])
產生:
[[0], [1], [2], [3], [4]]
外循環執行此任務一百次,但每次運行將內循環起始值增加 1。 所以我們生成了 100 個列表,包含 5 個元素的列表,每個列表包含 1 個元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.