<强>首先上一段程序:强>
进口numpy np list_a=列表(范围(10)) 打印(“list_a: {}”.format (list_a)) array_a=np.array (list_a) 打印(“array_a: {}”.format (array_a)) list_b=(真的,假的,真的,真的,假的,假的,真的,假的,真的,假的) 打印(“list_b: {}”.format (list_b)) array_b=np.array (list_b) 打印(“array_b: {}”.format (array_b)) dtype=np.bool面具=np.zeros(10日) 打印(“面具:{}”.format(面具)) >之前<强>下面是这段程序的输出:强>
list_a: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9) array_a: [0 1 2 3 4 5 6 7 8 9] list_b:(真的,假的,真的,真的,假的,假的,真的,假的,真的,假的) array_b:(真的假的真的真的假的假真的假的真的假的) 面具:[假假假假假假假假假假)从输出可以看出列表和数组的不同之处是列表是以逗号作为分隔符,而数组是以空格作为分隔符。还有numpy中的零生成的是数组中。其实,列表和数组还有很多的不同之处,例如:
是Python列表中的普通列表对象,支持附加和参加操作,没有形状属性;数组是numpy数据库中的对象,不支持附加和参加操作,具有形状属性。
一个列表中可以存放不同类型的数据,如int,浮动,str或者布尔型,而数组中只能存放相同类型的数据。
列表不支持乘法操作,数组支持乘法操作。
而对于赋值操作,操作对象只能是数组,而索引可以是数组也可以是列表:
d=array_a [list_b] 打印(“array_a [list_b]: {}“.format (d)) e=array_a [array_b] 打印(“array_a [array_b]: {}“.format (e)) 面具(list_b)=1 打印(“面具:{}”.format(面具)) >之前输出如下:
array_a [list_b]: [0 2 3 6 8] array_a [array_b]: [0 2 3 6 8] 面具:[真的假的真的真的假的假真的假的真的假)此番操作可以将array_a中对b应数组或列表真实位上的元素组成一个新的数组。
如果对列表进行如此赋值操作,即把程序中的array_a换成list_a,则会报错:
d=list_a [list_b] TypeError:列表索引必须是整数或片,而不是列表中 e=list_a [array_b] TypeError:只有整数标量数组可以被转化为一个标量索引 >之前以上这篇python之数组赋值技巧分享就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
python之数组赋值技巧分享