1、zeros()产生的是数组,不是list;元素是浮点型不是int型
from numpy import * a=zeros(3) print(type(a)) print(a)
输出:
<class 'numpy.ndarray'>
[0. 0. 0.]
2、数组的对应元素相加
两个list相加表示元素的结合:
a=[1,2] b=[3,4] print(a+b) 输出: [1, 2, 3, 4]
两个数组相加表示对应元素相加:
from numpy import * a=array([1,2]) b=array([3,4]) print(a+b) 输出: [4 6]
元素为int型的数组和元素为float型的数组对应元素相加:
from numpy import * a=zeros(3) b=array([1,1,2]) print(type(a[0])) #<class 'numpy.float64'> print(type(b[0])) #<class 'numpy.int32'> b+=a print(b)
以上代码会报错:TypeError: Cannot cast ufunc add output from dtype('float64') to dtype('int32') with casting rule 'same_kind'
把b+=a改成b=b+a即可,但是a+=b和a=a+b均不会报错。
3、append
a=[] b=[[1,2],[2,3,]] for i in range(len(b[0])): a.append(b[i]) print(a)
相当于深拷贝。
4、log
from numpy import * print(log(1)) 输出: 0.0
log(a)即为对a取自然对数。