脚本专栏 
首页 > 脚本专栏 > 浏览文章

Python中交换两个元素的实现方法

(编辑:jimmy 日期: 2025/7/1 浏览:3 次 )

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中交换两个元素的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:将Dataframe数据转化为ndarry数据的方法
下一篇:Python格式化日期时间操作示例
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?