优草派  >   Python

numpy数组与list怎么相互转换?

陈思远            来源:优草派

Python中的Numpy(Numerical Python)是一个用于科学计算的开源Python扩展库,包含了强大的数值数组对象ndarray和各种工具函数。与Python自带的list相比,Numpy数组要更加高效、快速、方便许多。但我们在实际应用中也经常需要和list格式进行转换,本文将为大家介绍numpy数组和list之间的相互转换。

numpy数组与list怎么相互转换?

一、list转numpy数组

1.通过np.array()方法

在numpy中,我们可以使用np.array()方法将list转换为numpy数组:

import numpy as np

lst = [1,2,3,4,5]

arr = np.array(lst)

print(arr)

输出结果:

[1 2 3 4 5]

2.通过np.asarray()方法

np.asarray()方法可以将列表、元组、元组列表、以及其他类似数组的对象转化为ndarray对象:

import numpy as np

lst = [1,2,3,4,5]

arr = np.asarray(lst)

print(arr)

输出结果:

[1 2 3 4 5]

二、numpy数组转list

1.通过tolist()方法

tolist()方法可以将numpy数组转为list:

import numpy as np

arr = np.array([1,2,3,4,5])

lst = arr.tolist()

print(lst)

输出结果:

[1, 2, 3, 4, 5]

2.通过list()方法

numpy数组也可以通过list()方法转为list,只需要将数组放入list()方法中即可:

import numpy as np

arr = np.array([1,2,3,4,5])

lst = list(arr)

print(lst)

输出结果:

[1, 2, 3, 4, 5]

三、附:常见错误

1.使用numpy数组时,如果数据类型不匹配,会出现错误:

import numpy as np

lst = [1,2,3,4,5]

arr = np.array(lst, dtype='float64')

print(arr)

输出结果:

[1. 2. 3. 4. 5.]

2.当numpy数组的元素类型和list不同,返回的数组仍然是list:

import numpy as np

lst = [1,'a',2]

arr = np.array(lst)

print(arr)

输出结果:

['1' 'a' '2']

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行