python交换两个变量的值方法

yipeiwu_com5年前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 Numpy数组扩展repeat和tile使用实例解析

这篇文章主要介绍了Python Numpy数组扩展repeat和tile使用实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 n...

numpy使用技巧之数组过滤实例代码

本文研究的主要是numpy使用技巧之数组过滤的相关内容,具体如下。 当使用布尔数组b作为下标存取数组x中的元素时,将收集数组x中所有在数组b中对应下标为True的元素。使用布尔数组作为下...

Python实现以时间换空间的缓存替换算法

缓存是指可以进行高速数据交换的存储器,它先于内存与CPU交换数据,因此速度很快。缓存就是把一些数据暂时存放于某些地方,可能是内存,也有可能硬盘。 在使用Scrapy爬网站的时候,产生出来...

python通过getopt模块如何获取执行的命令参数详解

前言 python脚本和shell脚本一样可以获取命令行的参数,根据不同的参数,执行不同的逻辑处理。 通常我们可以通过getopt模块获得不同的执行命令和参数。下面话不多说了,来一起看看...

Python实现base64编码的图片保存到本地功能示例

Python实现base64编码的图片保存到本地功能示例

本文实例讲述了Python实现base64编码的图片保存到本地功能。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 import...