列表解析

  前面介绍的生成列表squares 的方式包含三四行代码, 而列表解析让你只需编写一行代码就能生成这样的列表。 列表解析 将for 循环和创建新元素的代码合并成一行, 并自动附加新元素。 面向初学
者的书并非都会介绍列表解析, 这里之所以介绍列表解析, 是因为等你开始阅读他人编写的代码时, 很可能会遇到它。下面的示例使用列表解析创建你在前面看到的平方数列表:
squares.py

squares = [value**2 for value in range(1, 11)]
print(squares)

要使用这种语法, 首先指定一个描述性的列表名, 如squares 。 然后, 指定一个左方括号, 并定义一个表达式, 用于生成要存储到列表中的值。 在这个示例中, 表达式为value**2 , 它计算平方值。

接下来, 编写一个for 循环, 用于给表达式提供值, 再加上右方括号。 在这个示例中, for 循环为for value in range(1,11) ,它将值110提供给表达式value**2 。 请注意, 这里的for 语句末
尾没有冒号。
结果与前面的平方数列表相同:
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
要创建自己的列表解析, 需要经过一定的练习, 但能够熟练地创建常规列表后, 你会发现这样做是完全值得的。 当你觉得编写三四行代码来生成列表有点繁复时, 就应考虑创建列表解析


posted @ 2021-07-05 18:23  尖子  阅读(137)  评论(0编辑  收藏  举报