NumPy数组:
Python列表:
NumPy数组的大小可以通过shape
属性获取,它返回一个元组,表示每个维度的大小。
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr.shape) # 输出: (2, 3)
Python列表的大小可以通过len()
函数获取,它返回列表中元素的数量。
lst = [1, 2, 3, 4, 5]
print(len(lst)) # 输出: 5
NumPy数组的优势:
Python列表的优势:
NumPy数组类型:
int
, float
, complex
等。Python列表类型:
NumPy数组的应用场景:
Python列表的应用场景:
问题:为什么NumPy数组在某些操作上比Python列表快?
原因:
解决方法:
import numpy as np
import time
# 创建一个大数组和一个大列表
arr = np.random.rand(1000, 1000)
lst = arr.tolist()
# 计算数组的和
start_time = time.time()
sum_arr = np.sum(arr)
end_time = time.time()
print(f"NumPy数组求和时间: {end_time - start_time}秒")
# 计算列表的和
start_time = time.time()
sum_lst = sum(sum(lst, []))
end_time = time.time()
print(f"Python列表求和时间: {end_time - start_time}秒")
通过上述代码可以明显看到NumPy数组在数值计算上的性能优势。
领取专属 10元无门槛券
手把手带您无忧上云