python 列表赋值时出现的异常修改

    技术2022-07-10  154

    今天写 python 代码时突然遇到了一个一直找不到的 bug ,经过 print 函数 debug 大法后发现某个被我当做常量的列表不知道为什么被修改了,我尝试运行下面代码才发现了原因,原来 python 语言中列表的赋值类似于 C 语言中的指针,当直接用 b = a 将 a 的值赋给 b 后,我们修改列表 b ,同时也会修改列表 a :

    a = [1,2,3,4] b = [] b = a b.remove(1) print(a)

    以上代码得到的结果是:

    [2, 3, 4]

    以前一直没注意,今天写下来做备忘用。

    Processed: 0.012, SQL: 9