python list转数组_python中list与数组

1、list转换为数组

python中list转换为数组的方法为:b = np.array(list)

今天在使用该方法将二维list转换为二维数组时一直不成功,结果仍然是两个list,最后发现是两个list的元素数目不一样导致的,最后修改使两者数目一致,转换成功

list对其元素的类型和各元素所包含的子元素的类型及数目没有要求,这和数组不同,数组要求类型和数目必须相同,所以在将list转换为array时需要注意这一点

2、list与数组的读取

在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。 ​ 也正因为列表可以存放不同类型的数据,因此列表中每个元素的大小可以相同,也可以不同,也就不支持一次性读取一列,即使是对于标准的二维数字列表:

1 a = [[1, 2, 3], [4, 5, 6]]2 print(a[0])3 #结果为:[1, 2, 3]

4 print(a[:, 0]) #以数组的方式读取一列,报错

5 #TypeError: list indices must be integers or slices, not tuple

1 #可以用列表解析的方式读取一列

2 a = [[1, 2, 3], [4, 5, 6]]3 b = [x[0] for x ina]4 print(b)5 #结果为:[1, 4]

1 #对于数组可以直接读取

2 a = [[1, 2, 3], [4, 5, 6]]3 a =np.array(a)4 print(a[:, 0])5 #结果为:[1 4]

本文来自 lyshello123 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/songyunli1111/article/details/78109976?utm_source=copy

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值