之前在学习用python绘制动态2D李萨如图时,纵观所有大佬的博客,都能看见一句
Liss,=axs.plot(x,y)
这个,=属实是把我整不会了,用引擎搜索也没有找到什么非常详尽的讲解,于是单开一篇博客来详解一下。
先说结论
,=可以从只有一个元素的元组或列表里提取出那个仅有的元素。
可以从下面的实例中体会一下:
首先是对于队列:

可以看到,对于只有一个元素的队列a,如果直接赋值b=a,则b仍是一个队列;而如果用b,=a,则可以把a中唯一的那个元素提取出来。
对于元组来说情况也类似:

完全一样的操作,用b,=a我们成功把元组a中唯一的元素提取了出来。
值得注意的细节是,定义一个大小为1的元组时,不能直接用a=(1),这样a只是一个int变量,我们需要在元组中加一个逗号a=(1,),这样才能将a定义为元组。
如果列表/元组的大小不为1,则该语句无法正常运行:

可以看到错误提示中的‘too many values to unpack’。
所以,在绘制动态2D李萨如图时,由于plot函数返回的是一个大小为1的列表,要从中提取元素时,就可以用,=语句。

本文详细解析Python中,=的用法,特别是在处理单元素列表或元组时如何提取元素。通过示例展示了如何在绘制动态2D李萨如图时使用,=从plot函数返回的单元素列表中提取数据,强调了元组定义的细节,即单元素元组需在末尾添加逗号。同时指出,当列表/元组大小不为1时,,=无法正常工作,并可能导致'too many values to unpack'错误。
1224

被折叠的 条评论
为什么被折叠?



