python取数组索引_python数组与链表的索引

python取数组索引_python数组与链表的索引
接下来我要说 tf.argmax()函数的事情,所以这⾥先简单铺垫以下数组索引的事情。
python数组中⽤ “[]” 来区分维度,举个例⼦。
对于只有⾏和列两个维度的数组来讲,定义的⽅式如:(4*3数组)
import numpy as np
test=np.array([[1,2,3],[2,3,4],[5,4,3],[8,7,2]])
print(test)
这样第⼀个 [1,2,3] 表⽰第⼀维即第⼀⾏的数据,下⼀个[2,3,4]表⽰第⼆⾏的数据,以此类推。同时要注意,python使⽤ [] 来区分数组的维度,表⽰多维数组时,同⼀维度的要⽤ [] 括起来。⽐如⼀张灰度图像是⼆维数组,它在print之后有⾏和列两个维度,python先展⽰⾏,再展⽰列,每⼀⾏都⽤ [] 括起来,之间⽤“,”分隔,最后所有的⾏也要⽤ [] 括起来表⽰是⼆维数组。所以在定义和展⽰的时候,⼆维数组都有两个[]。
技巧是看最前⾯有⼏个 " [ " 就是⼏维数组。
但是要注意,python中数组的索引都是从0开始的!也就是存在第0⾏和第0列,同时[A:B]也都是表⽰从A到B截⽌,不包含B。
test[0] = array([1, 2, 3])      #第0⾏
test[1] = array([2, 3, 4])      #第1⾏
test[2] = array([5, 4, 3])      #第2⾏
test[3] = array([8, 7, 2])      #第3⾏
import numpy as np
test=np.array([[1,2,3],[2,3,4],[5,4,3],[8,7,2]])
print(test[0])
print(test[1])
print(test[2])
print(test[3])
输出:
在职攻读硕士
test[:,0] = array([1, 2, 3])      #第0列
test[:,1] = array([2, 3, 4])      #第1列中国药典2005版
test[:,2] = array([5, 4, 3])      #第2列
test[:,3] = array([8, 7, 2])      #第3列
import numpy as np
test=np.array([[1,2,3],[2,3,4],[5,4,3],[8,7,2]])
print(test[:,0])
print(test[:,1])
print(test[:,2])
输出:
可以看出来,python的显⽰可能没有matlab那么直观,他不会⾏展⽰成横的,列展⽰成竖的,它只会
⽤ [] 去分割每⼀维,这⾥要注意,尤其是常⽤matlab的⼈,很容易搞混,⽐如我
然⽽对于三维数组,前⾯有写过⼀篇⽂章,对于RGB三维数组,输出为:
V给
第⼀个 [ ] 其实是第⼀⾏第⼀列的元素的三个RGB值,第⼆个 [] 是第⼀⾏第⼆列元素的三个RGB值,然后说完⼀⾏,再说下⼀⾏直到到最后⼀个。
下⾯贴⼀个参考⽂献中,关于python中数组和列表读取⼀列的⽅法:
⽂献 [1] :
在python中,普通的列表list和numpy中的数组array是不⼀样的,最⼤的不同是:⼀个列表中可以存放不同类型的数据,包括int、float 和str,甚⾄布尔型;⽽⼀个数组中存放的数据类型必须全部相同,int或float。
在list中的数据类型保存的是数据的存放的地址,简单的说就是指针,并⾮数据,这样保存⼀个list就太⿇烦了,例如list1=[1,2,3,4]需要4个指针和四个数据,增加了存储和消耗cpu,⽽array1=numpy.array([1,2,3,4])只需要存放四个数据,读取和计算更加⽅便,因此在做纯数字操作时,建议使⽤array。
也正因为列表可以存放不同类型的数据,因此列表中每个元素的⼤⼩可以相同,也可以不同,也就不⽀持⼀次性读取⼀列,即使是对于标准的⼆维数字列表:
>>> a=[[1,2,3],[4,5,6]]
>>> a[0]    #取⼀⾏
[1, 2, 3]
>>> a[:,0]  #尝试⽤数组的⽅法读取⼀列失败
TypeError: list indices must be integers or slices, not tuple
我们需要⽤列表解析的⽅法读取⼀列:
>>> b=[x[0] for x in a]
美商业飞船将首飞
>>> print(b)
视频模块>保定爆炸[1, 4]
⽽对于数组,可以直接读取:
>>> import numpy as np
>>> a=np.array([[1,2,3],[4,5,6]])
>>> a[:,0]
当然列表在处理混合数据时也有着独特的优势。Reference:
CSDN-专业IT技术社区-登录b log.csdn

本文发布于:2024-09-23 09:29:49,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/155526.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数组   数据   列表   存放   读取   维度   直观
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议