![](http://dingyue.ws.126.net/2023/0120/0c695bccj00rosidy01b0d000v900hkp.jpg)
打开网易新闻 查看精彩图片
方法一:过度法
![](http://dingyue.ws.126.net/2023/0120/daf01772j00rosgq6000jd000ae0075p.jpg)
打开网易新闻 查看精彩图片
交换两个变量,初始能想到的,就是用一个新的变量,作为原始两个变量的过度,来完成两者之间的交换。
![](http://dingyue.ws.126.net/2023/0120/4112e07aj00rosgq6000jd000i9004ip.jpg)
打开网易新闻 查看精彩图片
执行后,可以得到预想中的结果,但多用了一个变量,很可能就用这么一次。
方法二:加减法
![](http://dingyue.ws.126.net/2023/0120/1401eb98j00rosgq6000jd000be007rp.jpg)
打开网易新闻 查看精彩图片
通过两个变量的相互加减,来完成两个变量值的交换。
![](http://dingyue.ws.126.net/2023/0120/2663a043j00rosh9c001fd000v900hkp.jpg)
打开网易新闻 查看精彩图片
上图是两个变量在代码执行过程中的值的变化,可以一步步感受是如何完成的。
![](http://dingyue.ws.126.net/2023/0120/d7057553j00rosgq7000id000if004cp.jpg)
打开网易新闻 查看精彩图片
执行结果肯定是无误,虽然感觉这和之前的一张是一样的。
方法三:拆包法
![](http://dingyue.ws.126.net/2023/0120/b7c7e205j00rosgq6000gd000b0006up.jpg)
打开网易新闻 查看精彩图片
拆包法最简单,这是Python才有的特性,个人认为更符合人类认知。
![](http://dingyue.ws.126.net/2023/0120/a39a1a9cj00roshi8001jd000i300b8p.jpg)
打开网易新闻 查看精彩图片
省略的还有一对圆括号,对,就是以元组的形式,其中元素分开赋予给等号左边的两个变量。
![](http://dingyue.ws.126.net/2023/0120/ccd8d4d8j00roshrr000pd000as007jp.jpg)
打开网易新闻 查看精彩图片
如果不理解的话,举个例子,描述一下过程。函数的作用只是返回数字2和3。
![](http://dingyue.ws.126.net/2023/0120/c142b0f3j00roshrr000jd000bu005np.jpg)
打开网易新闻 查看精彩图片
实际函数调用后,通过打印print输出到屏幕,得知返回的是由数字2和3组成的元组数据类型。
把函数返回值赋值给两个变量,分别打印后,可以看到两个变量的值,依次是元组的元素值,这个赋值的过程,可以叫做拆包。
PS:本文代码基于Windows 10,Python 3.10.4。
![](http://dingyue.ws.126.net/2023/0120/cf7f13bcj00roselg0042d000zk00b8p.jpg)
打开网易新闻 查看精彩图片
热门跟贴