打开网易新闻 查看精彩图片

方法一:过度法

打开网易新闻 查看精彩图片

交换两个变量,初始能想到的,就是用一个新的变量,作为原始两个变量的过度,来完成两者之间的交换。

打开网易新闻 查看精彩图片

执行后,可以得到预想中的结果,但多用了一个变量,很可能就用这么一次。

方法二:加减法

打开网易新闻 查看精彩图片

通过两个变量的相互加减,来完成两个变量值的交换。

打开网易新闻 查看精彩图片

上图是两个变量在代码执行过程中的值的变化,可以一步步感受是如何完成的。

打开网易新闻 查看精彩图片

执行结果肯定是无误,虽然感觉这和之前的一张是一样的。

方法三:拆包法

打开网易新闻 查看精彩图片

拆包法最简单,这是Python才有的特性,个人认为更符合人类认知。

打开网易新闻 查看精彩图片

省略的还有一对圆括号,对,就是以元组的形式,其中元素分开赋予给等号左边的两个变量。

拆包过程

打开网易新闻 查看精彩图片

如果不理解的话,举个例子,描述一下过程。函数的作用只是返回数字2和3。

打开网易新闻 查看精彩图片

实际函数调用后,通过打印print输出到屏幕,得知返回的是由数字2和3组成的元组数据类型。

把函数返回值赋值给两个变量,分别打印后,可以看到两个变量的值,依次是元组的元素值,这个赋值的过程,可以叫做拆包。

PS:本文代码基于Windows 10,Python 3.10.4。

打开网易新闻 查看精彩图片