024. 使用列表推导式生成一个包含0到9的平方的列表

在 Python 中,列表推导式(List Comprehension)是一种简洁且高效的方式来创建列表。它可以在一行代码中完成循环和条件判断,生成新的列表。

示例代码

# 使用列表推导式生成包含 0 到 9 的平方的列表
squares = [x ** 2 for x in range(10)]

# 打印结果
print(squares)

运行结果

运行上述代码后,输出如下:

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

代码解释

range(10)

  • range(10) 生成一个从 0 到 9 的整数序列。

列表推导式

  • [x ** 2 for x in range(10)] 是一个列表推导式。

  • for x in range(10):遍历 range(10) 中的每个值,并将其赋值给变量 x

  • x ** 2:对每个 x 计算其平方。

  • 最终,列表推导式会生成一个包含所有平方值的新列表。

打印结果

  • 使用 print() 函数打印生成的列表。

扩展:添加条件判断

如果需要在生成列表时添加条件判断,可以在列表推导式中使用 if 语句。例如,生成一个包含 0 到 9 的平方,但只包含平方值为偶数的列表:

# 使用列表推导式生成包含 0 到 9 的平方的列表,只包含平方值为偶数
even_squares = [x ** 2 for x in range(10) if (x ** 2) % 2 == 0]

# 打印结果
print(even_squares)

运行结果

运行上述代码后,输出如下:

[0, 4, 16, 36, 64]

代码解释

if (x ** 2) % 2 == 0

  • 在列表推导式中添加了一个条件判断,只包含平方值为偶数的元素。

  • (x ** 2) % 2 == 0:判断平方值是否为偶数。

生成结果

  • 列表推导式会生成一个只包含平方值为偶数的新列表。

总结

列表推导式是 Python 中一种非常强大且简洁的工具,可以快速生成列表。通过结合循环和条件判断,可以灵活地生成满足特定条件的列表。

视频讲解

BiliBili: 视睿网络-哔哩哔哩视频 (bilibili.com)