gpt4 book ai didi

python - 这条赋值语句中目标名称后面的逗号有什么作用?

转载 作者:行者123 更新时间:2023-11-28 19:40:09 25 4
gpt4 key购买 nike

我正在查看我发现的一个有趣的示例脚本(在 this site,最后一个示例第 124 行),我正在努力理解 particles 之后的逗号在这一行中的作用:

particles, = ax.plot([], [], 'bo', ms=6)

如果省略逗号,脚本会出错,但语法(似乎类似于解包语句)对我来说意义不大,像这样的语句

a, = [2,3]

失败,这似乎是对拆包理论的反驳。

最佳答案

需要解包 1 元组(或任何其他长度为 1 的序列)。示例:

>>> a,b = (1,2)
>>> print a
1
>>> print b
2
>>> c, = (3,)
>>> print c
3
>>> d = (4,)
>>> print d
(4,)

注意 c 和 d 之间的区别。

注意:

a, = (1,2)

失败是因为您需要左侧的项目数与右侧的可迭代项包含的项目数相同。 Python 3.x 在某种程度上缓解了这一点:

Python 3.2.3 (v3.2.3:3d0686d90f55, Apr 10 2012, 11:09:56) 
[GCC 4.0.1 (Apple Inc. build 5493)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> a,*rest = (1,2,3)
>>> a
1
>>> rest
[2, 3]

关于python - 这条赋值语句中目标名称后面的逗号有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15103786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com