numpy.ndarray与list加法,np.array和list的使用区别

 

list加法和ndarray的使用是有区别的

[in]  
a=[1,3,4]+[3,7,9]
print("a=",a)
print(type(a))


[out]

a= [1, 3, 4, 3, 7, 9]
<class 'list'>

list用“+”号时是将两个list进行连接,类似extend,并没有进行数的运算

[in]
c=[1,2]
d=[3,4]
c.extend(d)
print(c)

[out]
[1, 2, 3, 4]

#使用extend时,如果这样用会输出None
e=c.extend(d)
print(e)
#此时输入为None

使用numpy.ndarray时,是对应位置进行相加

[in]
b=zeros(3)+[1,3,4]+[2,5,7]
print("b=",b)
print(type(b))

[out]
#其中zeros(3)=[0,0,0]
b= [ 3.  8. 11.]
<class 'numpy.ndarray'>

np.array进行乘法和加法运算,不同类型可以进行运算

[in]
a=np.array([1,3,3])
b=1.02*a+3
print(b)


[out]

[4.02 6.06 6.06]

list乘法和加法如果采用和np.array相同的方法则报错,因此list是不能和单独的数非int型的数进行乘法运算的,

[in]
c=[1,3,4]
d=1.02*c+3
print(d)

若进行强制类型转换将float改为int,则长度会加倍

c=[1,3,4]
d=2*c
print(d)


[out]
[1,3,4,1,3,4]

 

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
首先,需要导入NumPy库: ``` import numpy as np ``` 然后,我们可以创建一个Python List 和一个NumPy array,来比较它们的不同: ``` # 创建一个Python List py_list = [1, 2, 3, 4, 5] # 创建一个NumPy array np_array = np.array([1, 2, 3, 4, 5]) ``` 1. 数据类型 Python List 可以包含不同类型的数据,如字符串、整数、浮点数等等。而NumPy array 只能包含同一种数据类型。 我们可以使用以下代码检查数据类型: ``` # Python List 的数据类型 print(type(py_list[0])) # NumPy array 的数据类型 print(type(np_array[0])) ``` 输出结果为: ``` <class 'int'> <class 'numpy.int64'> ``` 可以看出,Python List 中的数据类型为整数,而NumPy array 中的数据类型为 numpy.int64。 2. 形状 Python List 可以是任意长度,而NumPy array 的形状必须是固定的。我们可以使用以下代码检查形状: ``` # Python List 的长度 print(len(py_list)) # NumPy array 的形状 print(np_array.shape) ``` 输出结果为: ``` 5 (5,) ``` 可以看出,Python List 的长度为5,而NumPy array 的形状为(5,),表示它是一个一维数组,有5个元素。 3. 运算 NumPy array 支持向量化运算,可以对整个数组进行操作。而Python List 需要循环遍历才能进行操作。 我们可以使用以下代码进行加法运算: ``` # Python List加法运算 py_list_sum = [] for i in py_list: py_list_sum.append(i + 2) print(py_list_sum) # NumPy array加法运算 np_array_sum = np_array + 2 print(np_array_sum) ``` 输出结果为: ``` [3, 4, 5, 6, 7] [3 4 5 6 7] ``` 可以看出,使用Python List 进行加法运算需要循环遍历,而使用NumPy array 可以直接对整个数组进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值