Numpy中向量与标量计算

1、简单运算

+、-、*、/、**:加减乘除幂运算

import numpy as np
a=np.array([1,2,3])
b=np.array([3,2,1])
print (a+10) #对应位置依次相加 
print (a*2)
print ([1,2,3]*2)
print (a+b)
print (a-b)
print (a*b)
print (a/b)
print (a**b) #次幂操作
[11 12 13]
[2 4 6]
[1, 2, 3, 1, 2, 3]
[4 4 4]
[-2  0  2]
[3 4 3]
[0.33333333 1.         3.        ]
[1 4 3] 

2、布尔运算

&、|、~:与或非运算

  • 当为boolean时,是与或非
  • 当为整数时,按位做与或非操作

如3&2,3按照二进制为11,2按二进制为10,3&2就相当于11&10,得到了10为2

3&2=2

3|2=3

非操作,如~3,,机器是32位了,3=0000......0000 0011,非操作就是把所有的0变成1,1变成0,

~3=1111......1111 1100,计算机中首位是1表示一个负数,后面的数用补码实现,一般是把补码取非操作,然后再+1得到自然数

即:1后面的很多0取非操作,0000......0000 0011=3,3+1=4,再加一个符号为-4

所以~3=-4

~n=-(n+1)

import numpy as np
a=np.array([True,True,False,False]) #当为布尔类型,做与或非操作
b=np.array([True,False,True,False])
c=np.array([1,2,3])
d=np.array([2,1,2])
print (a|b) #布尔或
print (a&b) #布尔与
print (~a)  #布尔非
print (c|d) #按位或
print (c&d) #按位与
print (~c)  #按位非
[ True  True  True False]
[ True False False False]
[False False  True  True]
[3 3 3]
[0 0 2]
[-2 -3 -4]

3、比较运算

>、>=、<、<=、==、!=大于小于等于不等运算

import numpy as np
a=np.array([1,2,3])
b=np.array([3,2,1])
print (a>b) 
print (a>=b) 
print (a<a)  
print (a<=b) 
print (a==b) 
print (a!=b)  
[False False  True]
[False  True  True]
[False False False]
[ True  True False]
[False  True False]
[ True False  True]

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值