本文概述

Numpy提供以下按位运算符。

SN

Operator

Description

1

bitwise_and

它用于计算相应数组元素之间的按位运算。

2

bitwise_or

它用于计算相应数组元素之间的按位运算。

3

invert

它用于计算按位而不是数组元素的运算。

4

left_shift

它用于将元素的二进制表示形式的位向左移动。

5

right_shift

它用于将元素的二进制表示形式的位向右移。

按位与运算

NumPy提供了bitwise_and()函数, 该函数用于计算两个操作数的bitwise_and运算。

对操作数的二进制表示形式的相应位执行按位与运算。如果操作数中的两个对应位都设置为1, 则仅AND结果中的结果位将设置为1, 否则将设置为0。

例子

import numpy as np

a = 10

b = 12

print("binary representation of a:", bin(a))

print("binary representation of b:", bin(b))

print("Bitwise-and of a and b: ", np.bitwise_and(a, b))

输出

binary representation of a: 0b1010

binary representation of b: 0b1100

Bitwise-and of a and b: 8

和真值表

当且仅当两个位均为1时, 两个位的AND结果的输出为1, 否则为0。

A

B

与(A, B)

0

0

0

0

1

0

1

0

0

1

1

1

按位或运算符

NumPy提供了bitwise_or()函数, 该函数用于计算两个操作数的按位或运算。

对操作数的二进制表示形式的相应位执行按位或运算。如果操作数中的相应位之一设置为1, 则OR结果中的结果位将设置为1;否则, 结果为1。否则它将设置为0。

例子

import numpy as np

a = 50

b = 90

print("binary representation of a:", bin(a))

print("binary representation of b:", bin(b))

print("Bitwise-or of a and b: ", np.bitwise_or(a, b))

输出

binary representation of a: 0b110010

binary representation of b: 0b1011010

Bitwise-or of a and b: 122

或真相表

如果一位中的一位为1, 则两位的或结果的输出为1, 否则为0。

A

B

或(A, B)

0

0

0

0

1

1

1

0

1

1

1

1

反转操作

它用于计算按位而不是给定操作数的运算。如果在函数中传递有符号整数, 则返回2的补码。

考虑以下示例。

例子

import numpy as np

arr = np.array([20], dtype = np.uint8)

print("Binary representation:", np.binary_repr(20, 8))

print(np.invert(arr))

print("Binary representation: ", np.binary_repr(235, 8))

输出

Binary representation: 00010100

[235]

Binary representation: 11101011

它将操作数的二进制表示形式的位向左移动指定位置。从右边追加相等数量的0。考虑以下示例。

例子

import numpy as np

print("left shift of 20 by 3 bits", np.left_shift(20, 3))

print("Binary representation of 20 in 8 bits", np.binary_repr(20, 8))

print("Binary representation of 160 in 8 bits", np.binary_repr(160, 8))

输出

left shift of 20 by 3 bits 160

Binary representation of 20 in 8 bits 00010100

Binary representation of 160 in 8 bits 10100000

右移操作

它将操作数二进制表示形式的位向右移动指定位置。从左边追加相等数量的0。考虑以下示例。

例子

import numpy as np

print("left shift of 20 by 3 bits", np.right_shift(20, 3))

print("Binary representation of 20 in 8 bits", np.binary_repr(20, 8))

print("Binary representation of 160 in 8 bits", np.binary_repr(160, 8))

输出

left shift of 20 by 3 bits 2

Binary representation of 20 in 8 bits 00010100

Binary representation of 160 in 8 bits 10100000

python位运算符_NumPy按位运算符解析和实例详解相关推荐

  1. python2.7除法_对python中的float除法和整除法的实例详解

    从python2.2开始,便有两种除法运算符:"/"."//".两者最大区别在: python2.2前的版本和python2.2以后3.0以前的版本的默认情况下 ...

  2. php xml 实例教程,php解析xml方法实例详解,解析xml实例详解_PHP教程

    php解析xml方法实例详解,解析xml实例详解 本文以实例形式详细讲述了php解析xml方法.分享给大家供大家参考.具体分析如下: books.xml文件如下: Harry Potter J K. ...

  3. php解析bt,PHP基于闭包思想实现的BT(torrent)文件解析工具实例详解

    PHP基于闭包思想实现的BT(torrent)文件解析工具实例详解 发布于 2017-09-08 20:05:36 | 124 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP( ...

  4. python decimal类型转化_python中的decimal类型转换实例详解

    [Python标准库]decimal--定点数和浮点数的数学运算 作用:使用定点数和浮点数的小数运算. Python 版本:2.4 及以后版本 decimal 模块实现了定点和浮点算术运算符,使用的是 ...

  5. [转载] python 遍历字符串 字符_python 遍历字符串(含汉字)实例详解

    参考链接: Python字符串| rfind python 遍历字符串(含汉字)实例详解 python 遍历字符串(含汉字)实例详解 s = "中国china" for j in ...

  6. python 遍历字符串 字符_python 遍历字符串(含汉字)实例详解

    python 遍历字符串(含汉字)实例详解 python 遍历字符串(含汉字)实例详解 s = "中国china" for j in s: print j 首先一个,你这个'a'是 ...

  7. python 自动化办公 案例_python自动化工具之pywinauto实例详解

    python自动化工具之pywinauto实例详解 来源:中文源码网 浏览: 次 日期:2019年11月5日 [下载文档: python自动化工具之pywinauto实例详解.txt ] (友情提示: ...

  8. python教程三角函数_Python入门之三角函数tan()函数实例详解

    描述 tan() 返回x弧度的正弦值. 语法 以下是 tan() 方法的语法: import math math.tan(x) 注意:tan()是不能直接访问的,需要导入 math 模块,然后通过 m ...

  9. python迭代器创建序列_Python 中迭代器与生成器实例详解

    Python 中迭代器与生成器实例详解 本文通过针对不同应用场景及其解决方案的方式,总结了Python中迭代器与生成器的一些相关知识,具体如下: 1.手动遍历迭代器 应用场景:想遍历一个可迭代对象中的 ...

  10. python迭代器与生成器_python的迭代器与生成器实例详解

    本文以实例详解了python的迭代器与生成器,具体如下所示: 1. 迭代器概述: 迭代器是访问集合元素的一种方式.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后 ...

最新文章

  1. Android架构篇-2 国际化多语言
  2. DSP调试报错:Error connecting to the target:Connect to PRSC failed
  3. Linux常用文件和目录操作
  4. for循环中let,var 的经典面试题:for循环中 console.log(i)详解
  5. linux 移动硬盘 mnt,linux 移动硬盘 mnt
  6. day 39 mycql 数据库之约束
  7. codewars--js--Happy numbers++无穷大判断
  8. ubuntu下的常见12个命令---欢迎补充
  9. 异速联:解决打印样式个性化设置
  10. Navicat Premium 11.2.7 中文破解版安装
  11. 动手学深度学习-windows下环境配置
  12. 电路基本原理的那些事儿之 分压原理
  13. 微信小程序轮播图禁止滚动
  14. java 事务级别_java事务隔离级别
  15. ural 1818 Fair Fishermen
  16. java毕业设计_基于android的二手书城app的设计与实现
  17. 车载快充 自动升降压PD快充方案
  18. vscode中选中多行多光标进行操作及一些常用的命令(快捷键)
  19. 删除list列表中的某一个元素的多种方法
  20. idea软件调整字体大小和行间距

热门文章

  1. 近代数字信号处理实验-DFT分析信号的频谱
  2. Java8 Stream详解~ 提取/组合
  3. try-catch-finally-return执行路径总结
  4. java web响应式框架_Web开发的十佳HTML5响应式框架
  5. java mysql访问类_java 访问数据库公共类
  6. HashMap源码解释
  7. qwebkit 服务器调用本地html方法,用qt的QWebkit类调用谷歌地图
  8. linux直接用iso文件装服务,linux系统安装iso文件方法
  9. php xml 添加节点 出问题,PHP往XML中添加节点的方法
  10. uml 类图_UML-类图