python中表达式赋值与链式赋值的区别


python支持普通赋值,链式赋值,增量赋值,但不支持表达式赋值。

   普通赋值:x  =1

    增量赋值:x = 1 ; x  += 1

   链式赋值---同时对几个变量进行赋值,例子如下

                                                                                           

>>> x = 1
>>> x = y = x + 1
>>> x,y
(2, 2)

    在其它语言,如C语言中,支持表达式赋值,就是说,表达式是有返回值的,例如x = 1;y = (x += 1)),那么x,y的值都是2,在python中,会发生什么情况呢?

    

>>> x = 1
>>> y = (x += 1)
SyntaxError: invalid syntax
>>> y = (x = x+1)
SyntaxError: invalid syntax
>>> 

 

    上面的例子说明一个问题:python不支持表达式赋值。


    python还支持多元赋值,在一句话中,对多个变量进行赋值,eg:x ,y ,z = 1,2,"xyz"(一般x =1;y =2; z ="xyz"),或者是使用如下的表达式

 

 >>> (x,y,z) = (3,4,5)
>>> x
3
>>> y
4
>>> z
5
>>> 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM