首页 > 编程语言 >python实现同时给多个变量赋值的方法 Simultaneous Assignments

python实现同时给多个变量赋值的方法 Simultaneous Assignments

时间:2023-10-10 11:06:47浏览次数:46  
标签:datastructures www tuple python Assignments Simultaneous 序列 com 赋值

Simultaneous Assignments

x,y=y,x

这个赋值的执行流程是什么?

python的多元赋值原理是tuple的元组封装 (tuple packing) 和 序列拆封(sequence unpacking)。

t = 12345, 54321, 'hello!'

这是元组封装 (tuple packing) 的例子,将多个值放进tuple里。

x, y, z = t

元组封装 (tuple packing) 的逆操作就是序列拆封(sequence unpacking)。这个调用等号右边可以是任何线性序列,序列拆封要求左侧的变量数目与序列的元素个数相同。

多元赋值变量交换的例子:

a, b = b, a

就是将(b, a)打包成元祖,再序列的分给(a, b)这个序列。

 

官方文档:

http://www.pythondoc.com/pythontutorial3/datastructures.html#tut-tuples

Python tutorial 2.7.13 2.7.13 documentation

 

REF

 

http://www.pythondoc.com/pythontutorial27/datastructures.html#tut-tuples

http://www.pythondoc.com/pythontutorial3/datastructures.html#tut-tuples

https://www.zhihu.com/question/46505057/answer/101584055

 



标签:datastructures,www,tuple,python,Assignments,Simultaneous,序列,com,赋值
From: https://blog.51cto.com/emanlee/7789297

相关文章

  • Python 学习资源
    ThePythonTutorial(Python3.6.X)的中文翻译版本。PythonTutorial为初学Python必备官方教程,本教程适用于Python3.6.X。http://www.pythondoc.com/pythontutorial3/index.html  Python自带的chm文件安装Python之后,安装目录里面有一个doc文件夹,其中有个chm文件:  The......
  • Python 中的round函数
    在python2.7的doc中,round()的最后写着,"Values are rounded to the closest multiple of 10 to the power minus ndigits; if two multiples are equally close, rounding is done away from 0." 保留值将保留到离上一位更近的一端(四舍六入),如果距离两端一......
  • Python文件类型
    1.文件分类   源代码:文件以py为扩展名,由python程序解释,不需要编译;   *.pyc,py源文件编译成的二进制字节码文件,依然由python加载执行,不过速度会提高,也会隐藏源码;   *.pyo,优化编译后的程序,也是二进制文件,适用于嵌入式系统。2pyc和pyo文件生成   生成pyc文件:   ......
  • python 折行 代码换行
    非常长的字符串换行 ##三个双引号line="""thisisaveryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongstring"""line##三个单引号longstring1='''thisisalonglonglonglonglonglonglong......
  • 《流畅的Python》高清高质量电子书PDF+源代码
    下载:https://pan.quark.cn/s/02b9697a37d0......
  • 标量衍射计算不完全指南(python 实现)
    标量衍射计算不完全指南(python实现)Introduction本文的目的总结一些标量衍射的计算方法,并讨论讨论他们的适用条件。代码和例子在:https://github.com/zhemglee/Scalardiffraction需要的预备知识:涉及的数理知识并不高深,主要是线性系统和傅里叶变换(离散傅里叶变换)的基础知识,当然还......
  • python多线程
    importdatetimeimportthreadingfromtimeimportsleep#创建一个信号量,限制最多同时运行2个线程semaphore=threading.Semaphore(2)#创建一个线程锁threadLock=threading.Lock()defworker(i):withsemaphore:current_datetime=datetime.datet......
  • python接口自动化之request请求,如何使用 Python调用 API?
    Python实战|如何使用Python调用API一、HTTP 请求HTTP 请求是在 HTTP 协议下的一种数据格式,用于向服务器发送请求,其通常由请求行、请求头和请求体三部分构成,请求头和请求体之间用空行隔开,其中各部分包含的信息如下:请求行 (Request Line):包括请求方法 (GET请求、POST请......
  • [903] Concatenate (merge) multiple dictionaries in Python
    Toconcatenate(merge)multipledictionariesinPython,youcanusevariousmethodsdependingonyourPythonversionandpreferences.Herearesomecommonapproaches:1.Usingtheupdate()Method:Youcanusetheupdate()methodofdictionariestomergeo......
  • python的pip包国内源下载安装
    pipinstall包-ihttps://pypi.tuna.tsinghua.edu.cn/simple/--trusted-hostpypi.douban.com--命令镜像--直接使用这个安装项目中的依赖,国内网站pipinstall-rrequirements.txt-ihttps://pypi.tuna.tsinghua.edu.cn/simple/--trusted-hostpypi.douban.compipinstal......