等号前两个项之间的逗号

时间:2015-11-03 17:39:23

标签: python

有一个程序

 x, wrap_flag_x = wrap(x + cos(angle), N)

我的问题是,当你在等号左边的两个东西之间放一个逗号时它在做什么。

我得到例如x = 5,所以它与x相同,y = 5,其中x = 5,y = 5?

1 个答案:

答案 0 :(得分:2)

看看我这样做会发生什么:

In [1]: x,y = 1,2

In [2]: x
Out[2]: 1

In [3]: y
Out[3]: 2

因此,wrap(x + cos(angle), N)会返回两个值,其中第一个值会分配给x,而第二个值会分配给wrap_flag_x。以这种方式思考:

In [4]: def myfunc():
   ...:     return 'a', 'b'
   ...: 

In [5]: x,y = myfunc()

In [6]: x
Out[6]: 'a'

In [7]: y
Out[7]: 'b'

In [8]: myfunc()
Out[8]: ('a', 'b')