NumPy 教程 之 NumPy 位运算 7

简介: 位运算是在二进制位级别上进行的操作,广泛用于计算机科学中的优化及底层数据处理。NumPy 提供了一系列以 "bitwise_" 开头的位运算函数,如按位与 (`bitwise_and`)、按位或 (`bitwise_or`)、按位异或 (`bitwise_xor`)、按位取反 (`bitwise_not` 或 `invert`)、左移 (`left_shift`) 和右移 (`right_shift`)。例如,`right_shift()` 将数组元素的二进制形式向右移动指定位数,左侧补零。

NumPy 教程 之 NumPy 位运算 7

NumPy 位运算

位运算是一种在二进制数字的位级别上进行操作的一类运算,它们直接操作二进制数字的各个位,而不考虑数字的整体值。

位运算在计算机科学中广泛应用于优化和处理底层数据。

NumPy "bitwise_" 开头的函数是位运算函数。

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

函数 描述

bitwise_and 按位与,对数组元素执行位与操作
bitwise_or 按位或,对数组元素执行位或操作
bitwise_xor 按位异或
bitwise_not 按位取反
invert 按位取反
left_shift 左移位运算,向左移动二进制表示的位
right_shift 右移位运算,向右移动二进制表示的位

right_shift

right_shift() 函数将数组元素的二进制形式向右移动到指定位置,左侧附加相等数量的 0。

实例

import numpy as np

print ('将 40 右移两位:')
print (np.right_shift(40,2))
print ('\n')

print ('40 的二进制表示:')
print (np.binary_repr(40, width = 8))
print ('\n')

print ('10 的二进制表示:')
print (np.binary_repr(10, width = 8))

'00001010' 中的两位移动到了右边,并在左边添加了两个 0。

输出结果为:

将 40 右移两位:
10

40 的二进制表示:
00101000

10 的二进制表示:
00001010

目录
相关文章
|
3月前
|
数据可视化 Python
NumPy 教程 之 NumPy Matplotlib 7
使用Python的绘图库Matplotlib与NumPy结合进行数据可视化,提供Matplotlib作为MatLab开源替代方案的有效方法,以及如何利用plt()函数将数据转换成直观的直方图示例。
45 11
|
3月前
|
Python
NumPy 教程 之 NumPy Matplotlib 6
Matplotlib 是一个强大的 Python 绘图库,能与 NumPy 协同工作,提供类似 MatLab 的开源替代方案,并支持 PyQt 和 wxPython 等图形工具包。通过 `numpy.histogram()` 函数示例,展示了如何创建数据频率分布图,该函数接受输入数组和 bin 参数,生成对应频率的直方图。示例代码及输出清晰展示了 bin 的边界与对应频率的关系。
36 11
|
3月前
|
Python
NumPy 教程 之 NumPy Matplotlib 4
使用 Python 的绘图库 Matplotlib,结合 NumPy,生成各种图形,作为 MatLab 的开源替代方案。您将学习到如何用 matplotlib 和 NumPy 包来创建正弦波图形,以及如何在同一图中利用 subplot() 函数组织和展示不同的子图,例如同时绘制正弦和余弦曲线。通过实际代码示例,加深对这些功能的理解。
48 12
|
3月前
|
Python
NumPy 教程 之 NumPy Matplotlib 3
使用Python的绘图库Matplotlib与NumPy结合,创建有效的MatLab开源替代方案。它还支持与PyQt和wxPython等图形工具包搭配使用。通过向`plot()`函数添加特定格式字符串,可以展示离散值而非线性图。提供了多种线型和标记选项,例如实线`-`、虚线`--`、点标记`.`等,以及颜色缩写如蓝色`b`、绿色`g`等。示例代码展示了如何用圆点表示数据点而非线条。
42 10
|
3月前
|
Python
NumPy 教程 之 NumPy Matplotlib 5
Matplotlib 是 Python 的绘图库,配合 NumPy 可作为 MatLab 的开源替代方案,并能与 PyQt 和 wxPython 等图形工具包共同使用。本教程重点讲解 `bar()` 函数用于生成条形图的方法,并通过实例展示了如何创建并显示两组数据的条形图。
41 7
|
3月前
|
存储 Python
NumPy 教程 之 NumPy IO 1
NumPy IO 教程介绍了如何使用 NumPy 读写文本及二进制数据。教程覆盖了 `.npy` 和 `.npz` 格式的文件操作,其中 `save()` 和 `load()` 函数用于单个数组的存取,而 `savez()` 则可以保存多个数组。文本文件处理则由 `loadtxt()` 和 `savetxt()` 完成。通过示例展示了 `numpy.save()` 函数的具体用法,并解释了其参数含义,如文件名、数组对象以及序列化选项等。
46 10
|
3月前
|
Python
NumPy 教程 之 NumPy Matplotlib 2
Matplotlib 是 Python 的绘图库,能与 NumPy 结合使用,提供 MatLab 的开源替代方案,并支持 PyQt 和 wxPython 等图形工具包。由于 Matplotlib 默认不支持中文,可以使用思源黑体等字体或系统自带的中文字体(如仿宋)解决这一问题,通过指定字体路径或设置 `plt.rcParams['font.family']` 来实现中文显示。
31 1
|
3月前
|
存储 Ubuntu 数据可视化
NumPy 教程 之 NumPy Matplotlib 1
Matplotlib作为Python的绘图库,能够与NumPy结合使用,提供了类似MatLab的开源替代方案,并支持与PyQt和wxPython等图形工具包一同使用。本教程将指导你如何在不同系统环境下安装matplotlib,并通过实例演示如何利用它进行数据可视化,包括创建坐标轴标签、绘制线性图表并展示结果。
29 1
|
3月前
|
Python
NumPy 教程 之 NumPy Matplotlib 4
NumPy 教程 之 NumPy Matplotlib 4
17 0
|
3月前
|
存储 Python
NumPy 教程 之 NumPy IO 3
NumPy 支持读写文本与二进制数据,提供 `.npy` 格式保存 `ndarray`。常用函数包括:`save()`、`load()` 用于 `.npy` 文件的写入和读取;`savez()` 将多数组存为 `.npz` 格式;`savetxt()` 和 `loadtxt()` 处理 `.txt` 文件,支持自定义分隔符等选项。示例展示了如何使用 `savetxt()` 和 `loadtxt()` 进行数据存储及读取。
35 0