Numpy 为运算
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 |
|
5 | |
| ~5 | 11111111 11111111 11111111 11111010 | -6 |
Numpy 为运算的更多相关文章
- NumPy 位运算
NumPy 位运算 NumPy "bitwise_" 开头的函数是位运算函数. NumPy 位运算包括以下几个函数: 函数 描述 bitwise_and 对数组元素执行位与操作 b ...
- NumPy算数运算
NumPy - 算数运算 用于执行算术运算(如add(),subtract(),multiply()和divide())的输入数组必须具有相同的形状或符合数组广播规则. 示例 import numpy ...
- 10、numpy——位运算
NumPy 位运算 NumPy "bitwise_" 开头的函数是位运算函数. NumPy 位运算包括以下几个函数: 函数 描述 bitwise_and 对数组元素执行位与操作 b ...
- Lesson11——NumPy 位运算
NumPy 教程目录 Lesson11--NumPy 位运算 NumPy "bitwise_" 开头的函数是位运算函数. NumPy 位运算包括以下几个函数: 函数 描述 bitw ...
- Numpy 基础运算
numpy的几种运算 1.一维矩阵运算 >>> import numpy as np >>> a=np.array([10,20,30,40]) # array([ ...
- 吴裕雄--天生自然Numpy库学习笔记:NumPy 位运算
bitwise_and() 函数对数组中整数的二进制形式执行位与运算. import numpy as np print ('13 和 17 的二进制形式:') a,b = 13,17 print ( ...
- numpy数组运算
一.四则运算 (以此为例) 1.加法 2.减法 3.乘法 4.除法 5.幂运算 二.比较运算 (以此为例) 1.< > 2.>= <= 3.== != ...
- Numpy 基础运算2
# -*- encoding:utf-8 -*- # Copyright (c) 2015 Shiye Inc. # All rights reserved. # # Author: ldq < ...
- Numpy 基础运算1
# -*- encoding:utf-8 -*- # Copyright (c) 2015 Shiye Inc. # All rights reserved. # # Author: ldq < ...
随机推荐
- IDEA Tomcat配置 VM Option
-server -XX:PermSize=512M -XX:MaxPermSize=1024m -Dfile.encoding=UTF-8
- Yii2.0 引入外部js css
<script src="<?= Yii::$app->request->baseUrl . '/js/jquery-2.1.1.min.js'?>" ...
- 关于 checkbox 的一些操作
获取checkbox选中的状态 $("#checkbox").is(":checked"); 设置 checkbox 的状态 $("#checkbox ...
- centos7一步一步搭建docker tomcat 及重点讲解
系统环境:centos7.7 (VMware中) image版本:tomcat:8-jdk8-openjdk (截止2020.01.10该系列版本) 安装步骤参考文章:https://www.jian ...
- JS中的Boolean对象
使用new操作符和Boolean(value)构造函数时,得到的并不是原始的true或false,而是一个对象,JS将对象视为真(true) var oBooleanTrue = new Boolea ...
- Spring 事务管理的使用
Spring提供了2种事务管理 编程式的 声明式的(重点):包括xml方式.注解方式(推荐) 基于转账的demo dao层 新建包com.chy.dao,包下新建接口AccountDao.实现类Acc ...
- vscode vue js 开发插件配置
安装 vetur { // 自动补全触发范围---双引号内的字符串也可以触发补全 "editor.quickSuggestions": { "other": t ...
- 前端学习 之 JavaScript基础
一. JavaScript简介 1. JavaScript的历史背景介绍 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版.这是历史上第一个比较成熟的网络浏览器,轰动一时 ...
- 【协作式原创】查漏补缺之Golang中mutex源码实现
概览最简单版的mutex(go1.3版本) 预备知识 主要结构体 type Mutex struct { state int32 // 指代mutex锁当前的状态 sema uint32 // 信号量 ...
- getopts以参数形式执行diag
#!/bin/bash ################################################################################# # Copy ...