python交换两个变量的值方法

yipeiwu_com6年前Python基础

大部分语言,例如c语言,交换两个变量的值需要使用中间变量。

例如交换a,b

伪代码:

tmp = a
a = b
b = tmp

python里面可以实现无临时变量的交换

(a,b) = (b,a)

对于它的交换原理我深感好奇,因为这意味着python解释器很有可能做了件更多的工作。

如果说变量可以直接交换,那么列表的元素呢?

lists[i], lists[j] =lists[j], lists[i]

是否可以实现列表i,j元素的互换,如果可以实现,原理是什么?

可以实现交换,至于原理,可以用id查看变量或元素的地址。因为python中的变量名类似于指针指向了某个地址,其交换也就是指向改变了。

至于底层的原理,要找一个了解python的人请教一下

以上这篇python交换两个变量的值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中的break、continue、exit()、pass全面解析

1、break break是终止本次循环,比如你很多个while循环,你在其中一个while循环里写了一个break,满足条件,只会终止这个while里面的循环,程序会跳到上一层whil...

python多线程使用方法实例详解

本文实例讲述了python多线程使用方法。分享给大家供大家参考,具体如下: threading 模块支持守护线程, 其工作方式是:守护线程一般是一个等待客户端请求服务的服务器。 如果把一...

Python模拟百度自动输入搜索功能的实例

如下所示: # 访问百度,模拟自动输入搜索 # 代码中引入selenium版本为:3.4.3 # 通过Chrom浏览器访问发起请求 # Chrom版本:59 ,chromdrive...

python面向对象入门教程之从代码复用开始(一)

前言 本文从代码复用的角度一步一步演示如何从python普通代码进化到面向对象,并通过代码去解释一些面向对象的理论。所以,本文前面的内容都是非面向对象的语法实现方式,只有在最结尾才给出了...

Python实现的密码强度检测器示例

本文实例讲述了Python实现的密码强度检测器。分享给大家供大家参考,具体如下: 密码强度 密码强度如何量化呢? 一个密码可以有以下几种类型:长度、大写字母、小写字母、数字以及特殊符号。...