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

yipeiwu_com6年前Python基础

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

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

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

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

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

方法一

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

方法二

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

方法三

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

方法四

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

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

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

如:10101111

则结果为0101

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

相关文章

Python使用Turtle库绘制一棵西兰花

Turtle库是Python中一个强大的绘制图像的函数库,灵活使用Turtle库可以绘制各种好看的图像。 下面介绍使用Turtle库绘制一棵西兰花。 绘制一棵西兰花,从主干出发以一定的角...

使用PYTHON创建XML文档

当用GOOGLE查的时候,内容几乎都是一样的。但是你想要的东西,一个也没有。例如,我就找不到中国人写的如何使用PYTHON来创建一个XML文件。当然,直接用文件写的方式也能够达到同样的效...

用Python操作字符串之rindex()方法的使用

 rindex()方法返回所在的子str被找到的最后一个索引,可选择限制搜索的字符串string[beg:end] 如果没有这样的索引存在,抛出一个异常。 语法 以下是rind...

python实现单线程多任务非阻塞TCP服务端

本文实例为大家分享了python实现单线程多任务非阻塞TCP服务端的具体代码,供大家参考,具体内容如下 # coding:utf-8 from socket import * #...

Python3实现简单可学习的手写体识别(实例讲解)

Python3实现简单可学习的手写体识别(实例讲解)

1.前言 版本:Python3.6.1 + PyQt5 + SQL Server 2012 以前一直觉得,机器学习、手写体识别这种程序都是很高大上很难的,直到偶然看到了这个视频,听了老师...