Python既具有普通程序开发语言的特点,也具有Matlab语言用于数值计算的特点,,当然了数值计算是由其其强大的第三方库numpy实现的,矩阵在python中数据类型是ndarray,python中交换两个数值的代码和交换同一矩阵(ndarray)中不同向量的写法是不一样的。
以下是用Python原生的数据结构list实现的交换
>> a = [1,2,3]
>> b = [4,5,6]
>> a
[1,2,3]
>> b
[4,5,6]
>> a,b = b,a
>> a
[4,5,6]
>> b
>[1,2,3]
以下是numpy中交换矩阵中两列元素的方法
>> import numpy as np
>> a = np.array([[1,2,3],[4,5,6]])
>> a
array([[1, 2, 3],
[4, 5, 6]])
>> a[:,0],a[:,-1] = a[:,-1],a[:,0]
>> a
array([[3, 2, 3],
[6, 5, 6]])
>> a[:,[0, -1]] = a[:,[-1, 0]]
>> a
array([[3, 2, 1],
[6, 5, 4]])
上面代码是将同一矩阵的第一列和最后一列进行了交换,可见,用第一种的写法是错误的,第二种正确。
注意: 交换再同一矩阵中的不同行才要这样写,如果是不同矩阵的话按第一种写法就可以了
Python与NumPy矩阵操作
本文介绍了Python中如何使用原生list数据结构进行变量交换,并详细对比了在NumPy库中对ndarray类型数据进行列交换的不同方法。通过具体实例展示了Python在数值计算方面的强大功能。
1400

被折叠的 条评论
为什么被折叠?



