1.高级魔法命令
1.1 %run 调用
1.2%timeit和%%timeit
执行多次,取平均值
- %timeit 测试运行一行代码效率
- %%timeit 测试运行整段代码效率
%timeit L = [i**2 for i in range(1000)]
#325 µs ± 17.2 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
%%timeit
L = []
for n in range(1000):
L.append(n ** 2)
#368 µs ± 21.5 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
执行一次 ,值可能不同,与多种因素有关
- %time 测试运行一行代码效率
- %%time 测试运行整段代码效率
%time L = [i**2 for i in range(1000)]
#Wall time: 0 ns
#Wall time: 3 ms
%%time
L = []
for n in range(1000):
L.append(n ** 2)
#Wall time: 0 ns
#Wall time: 1e+03 µs
import random
L = [random.random() for i in range(100000)]
%timeit L.sort()
#1.31 ms ± 25.7 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)
L = [random.random() for i in range(100000)]
%time L.sort()
#Wall time: 33 ms
%time L.sort()
#Wall time: 3 ms
Python语言对sort排序函数有优化,对一个已经排好序的数组,sort可以很快的拍好顺序
1.3.其他
%lsmagic 查看所有的魔法命令
%run? run这个魔法命令相应的文档
2.numpy.array
2.1基础
2.2 创建数组和矩阵
Python range(起始,终止不包括该值,步长必须为整数)
numpy numpy.arange(起始,终止不包括该值,步长)
numpy.linspace(起始包括,终止值包括,等间隔生成几个值)
不知道numpy具体的使用方法时,可以在notebook中直接输入相应函数+?
eg
np.random?
在notebook里查阅相关文档可以用help()
2.3numpy数组的基本操作
numpy.array的数据访问
Reshape
2.4numpy数组的合并与分割
分割