整理9种Python常见的计算列表平方的方法:
1. 使用for循环
此方法遍历列表中的每个数字,使用 **
运算符计算其平方,然后将结果添加到新的列表中。
numbers = [1, 2, 3, 4, 5]
squared_numbers = []
for num in numbers:
squared_numbers.append(num ** 2)
print(squared_numbers)
2. 使用列表推导式
此方法使用列表推导式,这是一种更简洁的方式,可以在现有列表的每个项目上执行操作以创建新列表。
numbers = [1, 2, 3, 4, 5]
squared_numbers = [num ** 2 for num in numbers]
print(squared_numbers)
3. 使用map()函数和lambda函数
此方法使用map()函数和lambda函数来计算列表中每个数字的平方。
numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(lambda x: x ** 2, numbers))
print(squared_numbers)
4. 使用map()函数和定义的函数
与方法3类似,但是它使用单独定义的函数square(x),而不是lambda函数。
numbers = [1, 2, 3, 4, 5]
def square(x):
return x ** 2
squared_numbers = list(map(square, numbers))
print(squared_numbers)
5. 使用numpy库
此方法使用numpy.square()函数来计算列表中每个数字的平方。
import numpy as np
numbers = [1, 2, 3, 4, 5]
squared_numbers = np.square(numbers)
print(squared_numbers)
6. 使用生成器表达式
此方法使用生成器表达式,这是列表推导式和生成器的高性能、内存效率高的泛化。
numbers = [1, 2, 3, 4, 5]
squared_numbers = (num ** 2 for num in numbers)
squared_numbers = list(squared_numbers)
print(squared_numbers)
7. 使用math库
此方法使用math.pow()函数来计算列表中每个数字的平方。
import math
numbers = [1, 2, 3, 4, 5]
squared_numbers = [math.pow(x, 2) for x in numbers]
print(squared_numbers)
8. 使用operator模块
此方法使用operator.mul()函数来将列表中的每个数字与自身相乘。
import operator
numbers = [1, 2, 3, 4, 5]
squared_numbers = list(map(operator.mul, numbers, numbers))
print(squared_numbers)
9. 使用带有枚举的循环
此方法使用enumerate()函数来获取列表中每个数字的索引和值,然后使用 **
运算符计算数字的平方。
numbers = [1, 2, 3, 4, 5]
squared_numbers = []
for i, num in enumerate(numbers):
squared_numbers.append(numbers[i] ** 2)
print(squared_numbers)