Python中的四种交换数值的方法解析

yipeiwu_com7年前Python基础

这篇文章主要介绍了Python中的四种交换数值的方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

交换两个变量的值方法,这个面试题如果只写一种当然很简单,没什么可以说的。

今天这个面试是问大家有几种办法来实现交换两个变量的值。

在没开始看具体答案前,你可以先想想看

下面分别来说说这几种方法

方法一

通过新添加中间变量temp的方式,这个方法是最简单的,每个语言都适用。

方法二

Python独有的方法,一行代码就能搞定,直接将两个变量放到元组。

方法三

这个方法采用加减法来交换。不考虑效率,能达到交换的效果就行

方法四

采用异或运算,这个是不是看起来比较高大上。通过按位异或运算来交换两变量的值,可以减少变量的定义。

按位异或运算即计算机会先把十进制数转化为二进制数,并对二进制数讲行从右到左用从1开始编数,然后比较两个二进制数值相同位置的数,如果相同结果为0,不同时结果为1。

“1^1=01^0=10^0=0°

如:10101111

则结果为0101

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

django 按时间范围查询数据库实例代码

从前台中获得时间范围,在django后台处理request中数据,完成format,按照范围调用函数查询数据库。 介绍一个简单的功能,就是从web表单里获取用户指定的时间范围,然后在数据...

python中文编码与json中文输出问题详解

python中文编码与json中文输出问题详解

前言 python2.x版本的字符编码有时让人很头疼,遇到问题,网上方法可以解决错误,但对原理还是一知半解,本文主要介绍 python 中字符串处理的原理,附带解决 json 文件输出时...

python模糊图片过滤的方法

最近在做人脸识别清洗样本的工作,发现经过人脸对齐后存在部分图片十分模糊,所以用opencv滤了一下。 原理就是使用了cv2.Laplacian()这个方法,代码如下。图片越模糊,imag...

详解python深浅拷贝区别

详解python深浅拷贝区别

在Python中对象的赋值其实就是对象的引用。当创建一个对象,把它赋值给另一个变量的时候,python并没有拷贝这个对象,只是拷贝了这个对象的引用而已。 浅拷贝:拷贝了最外围的对象本身,...

python使用PyFetion来发送短信的例子

通过PyFetion可以很方便的使用python来用飞信发送短信,下面贴出代码:复制代码 代码如下:from fetion import *import osdef SendSMS(sm...