python可以使用a,b=b,a的这种序列解包的方式来交换变量,但是由于动态语言的特点,对于列表交换两个位置的值得时候要注意下标问题
比如一个列表
nums=[4,2,3,4,’*’]
在i=0时
nums[i],nums[nums[i]]=nums[nums[i]],nums[i]
会出现下标不为整数的问题。
猜测为以下原因
左边式子会从左到右执行,nums[i]变成了 星号,在为左边第二个式子的时候取下标的时候就出现了下标不为整数的问题。
python序列解包交换变量时的一个注意事项
最新推荐文章于 2023-02-02 16:03:11 发布