Numpy “bitwise_” 开头的函数是位运算函数:

Numpy 位运算包括以下几个函数:

函数

描述 
bitwise_and  对数组元素执行位与操作 
bitwise_or 对数组元素执行位或操作 
invert 按位反取
left_shift 向左移动二进制表示的位
right_shift 向右移动的二进制表示的位 

注:也可以使用 ‘&’、“~”、“|”等操作符进行计算。

bitwise_and

bitwise_and()函数对数组中正式的二进制形式执行位与运算

import  numpy as np

print('13 和 17 的二进制形式')
a, b = ,
print(bin(a), bin(b))
print('\n') print('13 和 17 的位与,')
print(np.bitwise_and(, )) 输出结果: 和 的二进制形式:
0b1101 0b10001 和 17的位与:

以上实例说明;

    1 1 0 1
AND           
  1 0 0 0 1
运算结果  0 0 0 0 1

位与运算操作规律如下:

A B AND
1 1 1
1 0 0
0 1 0
0 0 0

bitwise_or

bitwise_or()函数对数组中整数的二进制形式执行位与运算。

import numpy as np

a, b = ,
print('13 和 17 的二进制形式,')
print(bin(a), bin(b)) print('13 和 17 的位或,')
print(np.bitwise_or(, )) 输出的结果:
和 的二进制形式:
0b1101 0b10001
和 的位或:

以上实例可以用下表来说明:

    1 1 0 1
OR          
  1 0 0 0 1
运算结果  1 1 1 0 1

位或运算规律如下:

A B OR
1 1 1
1 0 1
0 1 1
0 0 0

invert

invert() 函数对数组中整数进行位取反运算,即 0 变为 1, 1 变为 0。

对于有符号整数,去改二进制数的补码,然后 +1、二进制数,最高位为 0 表示整数,最高位为 1 表示负数。

看看 ~1 的计算步骤:
  将1(这里叫:原码)转为二进制 = 000 00 001

  按位取反 = 11111110

  发现符号位(即最高位)为1(表示负数),将除符号位之外的其他数组取反 = 10000001

  末尾加1取其补码= 10000010

  转换会十进制 = -2

表达式  二进制(2的补数)   十进制值 
5

00000000 00000000 00000000 0000010
5
~5 11111111 11111111 11111111 11111010 -6

Numpy 为运算的更多相关文章

  1. NumPy 位运算

    NumPy 位运算 NumPy "bitwise_" 开头的函数是位运算函数. NumPy 位运算包括以下几个函数: 函数 描述 bitwise_and 对数组元素执行位与操作 b ...

  2. NumPy算数运算

    NumPy - 算数运算 用于执行算术运算(如add(),subtract(),multiply()和divide())的输入数组必须具有相同的形状或符合数组广播规则. 示例 import numpy ...

  3. 10、numpy——位运算

    NumPy 位运算 NumPy "bitwise_" 开头的函数是位运算函数. NumPy 位运算包括以下几个函数: 函数 描述 bitwise_and 对数组元素执行位与操作 b ...

  4. Lesson11——NumPy 位运算

    NumPy 教程目录 Lesson11--NumPy 位运算 NumPy "bitwise_" 开头的函数是位运算函数. NumPy 位运算包括以下几个函数: 函数 描述 bitw ...

  5. Numpy 基础运算

    numpy的几种运算 1.一维矩阵运算 >>> import numpy as np >>> a=np.array([10,20,30,40]) # array([ ...

  6. 吴裕雄--天生自然Numpy库学习笔记:NumPy 位运算

    bitwise_and() 函数对数组中整数的二进制形式执行位与运算. import numpy as np print ('13 和 17 的二进制形式:') a,b = 13,17 print ( ...

  7. numpy数组运算

    一.四则运算   (以此为例) 1.加法 2.减法 3.乘法 4.除法 5.幂运算 二.比较运算   (以此为例) 1.<   > 2.>=    <= 3.==    != ...

  8. Numpy 基础运算2

    # -*- encoding:utf-8 -*- # Copyright (c) 2015 Shiye Inc. # All rights reserved. # # Author: ldq < ...

  9. Numpy 基础运算1

    # -*- encoding:utf-8 -*- # Copyright (c) 2015 Shiye Inc. # All rights reserved. # # Author: ldq < ...

随机推荐

  1. 理解Spring 容器、BeanFactory 以及 ApplicationContext

    一.spring 容器理解 spring 容器可以理解为生产对象(Object)的地方,在这里容器不只是帮助我们创建对象那么简单,它负责了对象的整个生命周期-创建.装配.销毁.而这里对象的创建管理的控 ...

  2. JS-防抖与节流

    问题的由来:一些事件频繁的被触发而导致频繁的调用事件处理程序,从而造成程序不必要的开销,影响程序性能:防抖和节流就是为了解决这种情况造成的性能消耗. 场景1:使用keyup事件监听输入框的值进行请求搜 ...

  3. 惠普台式机,如何选择U盘启动

    开机先连续点击键盘F9按键进入选择启动盘界面,找到自己的U盘(KingstonDataTraveler 3.0)

  4. Java AQS 的胡言乱语修正版

    前言 适合读者:3 年以上经验的同学 谈到并发编程,基本上都会想到JDK 的 JUC 工具包,它包含 锁,并发工具类,原子类,线程池,还有阻塞队列,这是从网上找的一个大致的知识体系. 相信这些工具读者 ...

  5. Dism++ 更新管理提示“无法连接服务器”

    Dism++ 更新管理提示"无法连接服务器" 下载wsusscn3.cab,放入Dism++安装目录下Config文件夹中.

  6. Java 数据脱敏 工具类

    一.项目导入Apache的commons的Jar包. Jar包Maven下载地址:https://mvnrepository.com/artifact/org.apache.commons/commo ...

  7. 【转】ssh 远程执行命令

    原文:https://blog.csdn.net/liuxiao723846/article/details/82667482 SSH 是 Linux 下进行远程连接的基本工具,不光可以登录,也可以远 ...

  8. component:(resolve) => require

    resolve => require(['../pages/home.vue'], resolve)这种写法是异步模块获取,打包的时候每次访问这个路由的时候会单调单个文件,按需加载,不过这种写法 ...

  9. 几个原生js知识

    1.document.documentElement 返回根节点 html. 2.原生方法获取一个对象的某个样式的值. function getStyle(obj, attr) { if(obj.cu ...

  10. C++中的内联函数

    (1)定义.函数声明和定义时,在返回值类型前加inline关键字. (2)作用.避免调用时的额外开销. (3)使用情况.函数体很小,且频繁调用. (4)本质.通过牺牲代码段空间,来提高程序运行的时间效 ...