list.append()在循环中会有赋值覆盖
百度了一下也没怎么看明白
好像是因为append(ans)这里传的是ans的地址,而不是一个实数?
括号里的 ans每一层的循环中,每一次都是改变的它地址中的值,所以lsit中的值也跟着变,
所以除了第一次,后面每次判断列表里有没有ans的时候它都说有,以至于一直加不进去,或者应该说一直被覆盖
解决方法:
做个切片就好了不过这样会耗费更多的内存吧?不太清楚
list.append()在循环中会有赋值覆盖
百度了一下也没怎么看明白
好像是因为append(ans)这里传的是ans的地址,而不是一个实数?
括号里的 ans每一层的循环中,每一次都是改变的它地址中的值,所以lsit中的值也跟着变,
所以除了第一次,后面每次判断列表里有没有ans的时候它都说有,以至于一直加不进去,或者应该说一直被覆盖
解决方法:
做个切片就好了不过这样会耗费更多的内存吧?不太清楚
本文标题:循环中append值被覆盖的问题
本文链接:https://www.haomeiwen.com/subject/kvqfphtx.html
网友评论