浅谈numpy数组中冒号和负号的含义

作者:KenXuZW 时间:2023-09-02 01:03:04 

在实际使用numpy时,我们常常会使用numpy数组的-1维度和”:”用以调用numpy数组中的元素。也经常因为数组的维度而感到困惑。

总体来说,”:”用以表示当前维度的所有子模块

“-1”用以表示当前维度所有子模块最后一个,”负号用以表示从后往前数的元素”

测试代码


import numpy as np
b = np.arange(start=0, stop=24, dtype=int)
print('b.shape', b.shape)
# b.shape (24,)
b1 = b.reshape((4, 2, 3))
print('the value of b1\n', b1)
# the value of b1
# [[[ 0 1 2]
# [ 3 4 5]]
#
# [[ 6 7 8]
# [ 9 10 11]]
#
# [[12 13 14]
# [15 16 17]]
#
# [[18 19 20]
# [21 22 23]]]
print('b1[-1]\n', b1[-1])
# 从最外层的维度分解出最后一个模块
# b1[-1]
# [[18 19 20]
# [21 22 23]]
for a in b1[-1]:
print('s')
# 在这个模块中有两个小的模块,所以程序运行两次
# s
# s
print('b1[:-1]\n', b1[:-1])
# 从最外层的模块中分解出除最后一个子模块后其余的模块
# b1[:-1]
# [[[ 0 1 2]
# [ 3 4 5]]
#
# [[ 6 7 8]
# [ 9 10 11]]
#
# [[12 13 14]
# [15 16 17]]]
for a1 in b1[:-1]:
print('s')
# 在这个模块中有三个小的模块,所以程序运行两次
# s
# s
# s
print('b1[-1:]\n', b1[-1:])
# 写在最后一个维度的":"没有实质性作用,此处表示的意思和b1[-1]相同
# b1[-1:]
# [[[18 19 20]
# [21 22 23]]]
print('b1[:,-1]\n', b1[:, -1])
# 表示取出最外层的所有维度后每一个子模块中选择最后一个子模块
# b1[:,-1]
# [[ 3 4 5]
# [ 9 10 11]
# [15 16 17]
# [21 22 23]]
print('b1[:,:,-1]\n', b1[:, :, -1])
# 表示取最里层维度的最后一个元素重新组成新的元组
# b1[:,:,-1]
# [[ 2 5]
# [ 8 11]
# [14 17]
# [20 23]]

来源:https://blog.csdn.net/u013555719/article/details/79565366

标签:numpy,数组,冒号,负号
0
投稿

猜你喜欢

  • 初学者快看,Python下划线的五个作用介绍

    2023-03-03 18:23:40
  • Mysql联合查询UNION和UNION ALL的使用介绍

    2024-01-17 22:14:08
  • Python实现多线程爬表情包详解

    2022-05-26 01:30:55
  • Django中Forms的使用代码解析

    2022-03-20 08:06:56
  • python实现差分隐私Laplace机制详解

    2022-01-08 16:37:41
  • SQL Server 2012 安装图解教程(附sql2012下载地址)

    2024-01-18 20:49:32
  • mysql alter table 修改表命令详细介绍

    2024-01-13 21:35:38
  • Python3爬虫之urllib携带cookie爬取网页的方法

    2022-07-01 14:19:02
  • python 如何将数据写入本地txt文本文件的实现方法

    2021-05-02 14:11:52
  • Vue 使用 Mint UI 实现左滑删除效果CellSwipe

    2024-05-10 14:16:45
  • Python登录系统界面实现详解

    2021-02-11 19:24:04
  • python可视化 matplotlib画图使用colorbar工具自定义颜色

    2023-01-06 07:10:01
  • Python实现连接FTP并下载文件夹

    2021-02-28 01:56:26
  • python基础之元组

    2021-06-28 08:06:24
  • Python+tkinter使用40行代码实现计算器功能

    2023-05-07 17:27:16
  • Goland 关闭自动移除未使用的包操作

    2024-05-21 10:23:23
  • MySQL中distinct语句去查询重复记录及相关的性能讨论

    2024-01-16 23:31:27
  • 解决node.js安装包失败的几种方法

    2024-05-08 09:36:34
  • python实现电子词典

    2023-05-14 00:29:01
  • Python chardet库识别编码原理解析

    2021-03-18 16:41:54
  • asp之家 网络编程 m.aspxhome.com