一般如何学习python语言:data={i:randn()表示范围(7)内的i}

一般如何学习python语言:data={i:randn()表示范围(7)内的i},python,Python,我很难通过在线或书中的例子来学习python。例如,第二行 from numpy.random import randn data = {i : randn() for i in range(7)} 我在jupyter上运行它得到结果,但仍然不知道它是如何工作的。有没有任何建议让我理解这段代码,以及我如何学习python的运行方式?它被称为Dict Comprehension(),基本上是List Comprehension()的后续内容。其主要目的是: 列表理解提供了在中创建列表的更简洁的方

我很难通过在线或书中的例子来学习python。例如,第二行

from numpy.random import randn
data = {i : randn() for i in range(7)}

我在jupyter上运行它得到结果,但仍然不知道它是如何工作的。有没有任何建议让我理解这段代码,以及我如何学习python的运行方式?它被称为Dict Comprehension(),基本上是List Comprehension()的后续内容。其主要目的是:

列表理解提供了在中创建列表的更简洁的方法 map()和filter()和/或嵌套循环 目前正在使用

您的代码:

data = {i : randn() for i in range(7)}
可以理解为:

data = {}
for i in range(7):
    data[i] = randn()

但这是一个惯用的选择,而不是从第二个例子中可以假设的。可以将其视为创建某个容器的更快方法。如果您现在开始学习Python,请从常见的循环和语法开始,当您理解这些概念后,您可以跳到其他内容。

这是一个“词典理解”,如果这有助于您在网上找到一些相关教程的话。这基本上是说,“对于包含范围内的每个i[0,6]“关键:值映射是
i:random number
…为什么不理解?源和目标相同,并且使用了更多的
temp
data={}
data={generator\u object}
是相同的!