python之array赋值技巧分享


Posted in Python onNovember 28, 2019

首先上一段程序:

import numpy as np

list_a = list(range(10))
print("list_a: {}".format(list_a))

array_a = np.array(list_a)
print("array_a: {}".format(array_a))

list_b = [True,False,True,True,False,False,True,False,True,False]
print("list_b: {}".format(list_b))

array_b = np.array(list_b)
print("array_b: {}".format(array_b))

mask = np.zeros(10,dtype=np.bool)
print("mask: {}".format(mask))

下面是这段程序的输出:

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: [True, False, True, True, False, False, True, False, True, False]
array_b: [ True False True True False False True False True False]
mask: [False False False False False False False False False False]

从输出可以看出list和array的不同之处是list是以逗号作为分隔符,而array是以空格作为分隔符。还有numpy中的zeros生成的是array。其实,list和array还有很多的不同之处,例如:

list是Python中的普通列表对象,支持append和attend操作,没有shape属性;array是numpy数据库中的对象,不支持append和attend操作,具有shape属性。

一个list中可以存放不同类型的数据,如int、float、str或者布尔型;而array中只能存放相同类型的数据。

list不支持乘法操作;array支持乘法操作。

而对于赋值操作,操作对象只能是array,而索引可以是array也可以是list:

d = array_a[list_b]
print("array_a[list_b]: {}".format(d))

e = array_a[array_b]
print("array_a[array_b]: {}".format(e))

mask[list_b] = 1
print("mask: {}".format(mask))

输出如下:

array_a[list_b]: [0 2 3 6 8]
array_a[array_b]: [0 2 3 6 8]
mask: [ True False True True False False True False True False]

此番操作可以将array_a中对应b数组或列表True位上的元素组成一个新的数组。

如果对列表进行如此赋值操作,即把程序中的array_a换成list_a,则会报错:

d = list_a[list_b]
TypeError: list indices must be integers or slices, not list

e = list_a[array_b]
TypeError: only integer scalar arrays can be converted to a scalar index

以上这篇python之array赋值技巧分享就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python绘制人人网好友关系图示例
Apr 01 Python
详解Django框架中用context来解析模板的方法
Jul 20 Python
python判断字符串编码的简单实现方法(使用chardet)
Jul 01 Python
Python语言描述KNN算法与Kd树
Dec 13 Python
Python使用装饰器模拟用户登陆验证功能示例
Aug 24 Python
Python编写一个验证码图片数据标注GUI程序附源码
Dec 09 Python
Python3 中作为一等对象的函数解析
Dec 11 Python
关于python中的xpath解析定位
Mar 06 Python
Python3+selenium配置常见报错解决方案
Aug 28 Python
Python获取android设备cpu和内存占用情况
Nov 15 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
地图可视化神器kepler.gl python接口的使用方法
Dec 22 Python
python3 实现函数写文件路径的正确方法
Nov 27 #Python
关于Python3 lambda函数的深入浅出
Nov 27 #Python
python3中rank函数的用法
Nov 27 #Python
Python values()与itervalues()的用法详解
Nov 27 #Python
python3 assert 断言的使用详解 (区别于python2)
Nov 27 #Python
对python中assert、isinstance的用法详解
Nov 27 #Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 #Python
You might like
ie与session丢失(新窗口cookie丢失)实测及解决方案
2013/07/15 PHP
Mac系统下使用brew搭建PHP(LNMP/LAMP)开发环境
2015/03/03 PHP
yii添删改查实例
2015/11/16 PHP
php数组指针操作详解
2017/02/14 PHP
iis 7下安装laravel 5.4环境的方法教程
2017/06/14 PHP
PHP让数组中有相同值的组成新的数组实例
2017/12/31 PHP
JS event使用方法详解
2008/04/28 Javascript
javascript 出生日期和身份证判断大全
2008/11/13 Javascript
js验证电话号码与手机支持+86的正则表达式
2014/01/23 Javascript
jquery的clone方法应用于textarea和select的bug修复
2014/06/26 Javascript
CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法
2015/05/12 Javascript
深入理解关于javascript中apply()和call()方法的区别
2016/04/12 Javascript
深入剖析javascript中的exec与match方法
2016/05/18 Javascript
详解Webpack + ES6 最新环境搭建与配置
2018/06/04 Javascript
jQuery实现获取当前鼠标位置并输出功能示例
2019/01/05 jQuery
JavaScript实现移动端弹窗后禁止滚动
2020/05/25 Javascript
python版简单工厂模式
2017/10/16 Python
在python win系统下 打开TXT文件的实例
2018/04/29 Python
Python读写/追加excel文件Demo分享
2018/05/03 Python
Python搭建HTTP服务过程图解
2019/12/14 Python
Booking.com荷兰:全球酒店网上预订
2017/08/22 全球购物
香港优质食材和美酒专门店:FoodWise
2017/09/01 全球购物
荷兰包包购物网站:The Little Green Bag
2018/03/17 全球购物
I.T集团香港官方商城:ITeSHOP.com Hong Kong
2019/02/15 全球购物
Nordgreen台湾官网:极简北欧设计手表
2019/08/21 全球购物
阿姆斯特丹城市卡:Amsterdam Pass
2019/12/01 全球购物
经典c++面试题二
2015/08/14 面试题
学校司机岗位职责
2013/11/14 职场文书
2014年小班元旦活动方案
2014/02/16 职场文书
2014政府领导班子对照检查材料思想汇报(3篇)
2014/09/26 职场文书
工作批评与自我批评范文
2014/10/16 职场文书
2014年精神文明建设工作总结
2014/11/19 职场文书
大学感恩节活动总结
2015/05/05 职场文书
上帝也疯狂观后感
2015/06/09 职场文书
python中对列表的删除和添加方法详解
2022/02/24 Python
DSP接收机前端设想
2022/04/05 无线电