python 列表结构更新的奇妙问题
使用python + plt 画图遇到了一个奇怪的问题
应该出来的是这样:
结果做出来以后是这样:
为什么画到一起了。。。。。。
这个锅python列表背
a=[1,2]
b=a 这样 改变b ,a也会跟着一起变 ,所以就出了这样的问题
改成
a=[1,2]
b=a[:] 问题解决
注:几种用到的列表赋值方法:
一、用一个一维列表的一部分给二维列表按列更新 : plt_arr[:, j]=c[0:int(bins/2)] #plt_arr是一个二维 c是一个一维,并且只要c中从0到 int(bins/2)的这一部分
二、对时间效率要求高的程序避免使用for循环赋值,多使用copy或者列表级别的=赋值
三、使用Python matplotlib 如果不止要画一幅图 ,每一幅图结束后要使用plt.close(),否则可能会发生错乱