当前位置:首页 » 编程软件 » 编程两个列表

编程两个列表

发布时间: 2023-08-30 08:43:20

A. python 中交换两个列表元素的位置为什么用numbers[i],numbers[i+1] = numbers[i+1],numbers[i]

numbers[i], numbers[i+1] = numbers[i+1], numbers[i]

这是一个赋值语句,相当于:

t = (numbers[i+1], numbers[i]) # t是一个tuple元组

numbers[i] = t[0]

numbers[i+1] = t[1]


例如:numbers = [5, 6, 7]

i = 0 时

赋值时就是把numbers[i], numbers[i+1] = numbers[i+1], numbers[i] 这个语句中

等号右边的numbers[i+1], numbers[i] 先求值,得

numbers[1] == 6

numbers[0] == 5

再把 6, 5 赋值给等号左边(因为list列表是可变的数据类型,它的值可以添加,删除或改变),即:

numbers[i], numbers[i+1] = 6, 5

也就是:

numbers[0], numbers[1] = 6, 5

相当于:

numbers[0] = 6

numbers[1] = 5

此时,列表numbers 的值就被改变了(两个元素交换了位置)。


在IDLE 中验证如下:

>>> numbers = [5, 6, 7]

>>> i = 0

>>> numbers[i], numbers[i+1] = numbers[i+1], numbers[i]

>>> numbers

[6, 5, 7]


最后你的问题表述【交换两个列表元素的位置】改成【交换列表中两个元素的位置】是不是更没有歧义?

热点内容
变量的存储分配 发布:2025-03-14 15:01:12 浏览:172
php的初始化 发布:2025-03-14 14:59:20 浏览:599
c语言链表数组 发布:2025-03-14 14:59:08 浏览:102
王者安卓区转苹果区会有什么变化 发布:2025-03-14 14:44:44 浏览:305
思迅收银系统数据服务器ip 发布:2025-03-14 14:44:35 浏览:474
商云x加密狗 发布:2025-03-14 14:44:28 浏览:670
如何快速清除手机图形密码 发布:2025-03-14 14:32:03 浏览:444
电子邮件账户的服务器该怎么填写 发布:2025-03-14 14:31:59 浏览:422
泰拉瑞亚蒲公英怎么开在线服务器 发布:2025-03-14 14:21:20 浏览:630
如何破坏门上的密码锁 发布:2025-03-14 14:19:39 浏览:968