最近用python写了许多代码,发现了许多容易犯错的问题与比较好的操作。
二维列表不能按列引用,因为每行的长度可能不相等。一定要按列用的话,可以用numpy转换为矩阵。
列表直接=赋值并不代表复制,修改其中一个列表,另一个的值也会跟着变化。正确的复制方法应该是一维列表用.copy(),二维列表用copy.deepcopy()。
Pypy能够极大地加速python代码,但不支持numpy、scipy等第三方库。
字典操作很好用,按键查值速度很快:https://blog.csdn.net/yinlu521wang/article/details/99207182
注意.remove()函数一次只能删除一个元素,如果要删除多个重复元素需要多次用.remove(),而.index()返回下标也是一样,而且返回下标后会删除该元素。。。
列表中+是一个连接符号,可以将多个列表合起来,是一个非常好的特性,方便改变列表大小。与numpy矩阵的+对应元素相加不一样。
numpy.zeros((1, 3)),注意生成二维numpy矩阵时,矩阵大小用元组表示,所以有两个括号;生成一维矩阵用int型整数表示大小即可,矩阵元素默认为float型变量。
元组的值不能修改,只能引用;列表和字典都可以修改。
for循环除了常用的for i in range():,还可以用for i in List:实现对列表中元素的依次引用。
代码比较复杂时,一定要每个函数测试通过,无错误之后,再整合到一起。