python numpy数组切片_python列表切片详解

python numpy数组切片_python列表切片详解python的数组切片操作很强大,但有些细节老是忘,故写一点东西记录下来。在python&numpy中切片(slice)对于一维数组来说,python的list和numpy的array切片操作都是相似的。无非记住arr[start:end:step]即可下面是几个特殊的例子[:]表示复制源列表负的index表示,从后往前。-1表示最后一个元素。相对于一维数组而言,二维(多维)数组用的会更多…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

python的数组切片操作很强大,但有些细节老是忘,故写一点东西记录下来。

在python&numpy中切片(slice)

对于一维数组来说,python的list和numpy的array切片操作都是相似的。无非记住

arr[start:end:step]

即可

下面是几个特殊的例子

[:]表示复制源列表

负的index表示,从后往前。-1表示最后一个元素。

相对于一维数组而言,二维(多维)数组用的会更多。一般语法是arr_name[行操作, 列操作]

先随机产生一个3*4的数组

in:arr = np.arange(12).reshape((3, 4))

out:

array([[ 0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]])

取行数据

arr[i, :] #取第i行数据

arr[i:j, :] #取第i行到第j行的数据

取列数据(注意数据格式)

in:arr[:,0] # 取第0列的数据,以行的形式返回的

out:

array([0, 4, 8])

in:arr[:,:1] # 取第0列的数据,以列的形式返回的

out:

array([[0],

[4],

[8]])

取一个数据块

取第一维的索引1到索引2之间的元素,也就是第二行

取第二维的索引1到索引3之间的元素,也就是第二列和第三列

in:arr[1:2, 1:3]

out:

array([[5, 6]])

取第一维的全部

按步长为2取第二维的索引0到末尾之间的元素,也就是第一列和第三列

in: arr[:, ::2]

out:

array([[ 0, 2],

[ 4, 6],

[ 8, 10]])

补充:数组里的-1代表倒序,而reshape里的-1代表未知!!!!!

一个数组a=[0,1,2,3,4],a[-1]表示数组中最后一位,a[:-1]表示从第0位开始直到最后一位,a[::-1]表示倒序,从最后一位到第0位。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170345.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 编写程序计算1~10的平方和_设计一个程序计算1~10的平方

    编写程序计算1~10的平方和_设计一个程序计算1~10的平方给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a2 + b2 = c 。示例 1:输入:c = 5输出:true解释:1 * 1 + 2 * 2 = 5示例 2:输入:c = 3输出:false示例 3:输入:c = 4输出:true示例 4:输入:c = 2输出:true示例 5:输入:c = 1输出:true提示:0 <= c <= 231 – 1题解双指针,注意整形溢出class Solution {public

    2022年8月8日
    7
  • python—-简史

    python—-简史然软件产业的历史相对于人类历史只是白驹过隙,但世界上却存在非常多的编程语言,「Python」 就是其中之一。Python语言算得上一门“古老”的编程语言,Python流行这么久,必然有它

    2022年7月5日
    25
  • opencv实现imfill_使用opencv实现matlab中的imfill填充孔洞功能

    opencv实现imfill_使用opencv实现matlab中的imfill填充孔洞功能使用opencv实现matlab中的imfill填充孔洞功能,整体思路如下:1.首先给原始图像四周加一圈全0,并保存为另一幅图像2.使用floodFill函数给新图像进行填充,种子点设置为Point(0,0),填充颜色为全白。因为原始图像四周加了一圈0,因此使用floodFill填充之后,整个图像除了原始图像中内部的点是黑色之外其他地方全是白色。3.将填充之后…

    2025年11月8日
    4
  • Python3列表_python tuple

    Python3列表_python tuple列表列表特点:是一种序列结构,与元组不同,列表具有可变性,可以追加、插入、删除、替换列表中的元素新增元素appendappend添加一个对象,可以是任意类型a=['zhangsa

    2022年7月30日
    7
  • vs实现用户注册登录_用户注册和登录的实现

    vs实现用户注册登录_用户注册和登录的实现publicstaticUserInfoGetUser(stringname,stringpwd){//填写搜索姓名和密码的sql语句stringsql=string.Format(“select*fromUserInfowhereLoginName='{0}’andPassword='{1}'”,name,pwd);DataTabledt=DBHelper.ExcuteTab.

    2022年8月22日
    10
  • Linux中DHCP的服务配置_linux配置ip地址命令

    Linux中DHCP的服务配置_linux配置ip地址命令DHCP:DynamicHostConfigurationProtocollease:租约报文:首次获取IP地址(广播包)client向服务器端发送DHCPDISCOVER的UDP报文server端回应DHCPOFFER报文client发送DHCPREQUEST报文,向服务器请求使用该报文server端发送DHCPACK报文,发送确认报文续租(单…

    2025年6月30日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号