代码之家  ›  专栏  ›  技术社区  ›  Miguel

在同一行中切片并从列表中删除

  •  0
  • Miguel  · 技术社区  · 7 年前

    abc = [1,2,3,4,5]
    dd = (abc[:]).remove(4)
    print(dd)
    print(abc)
    

    结果是:

    没有
    [1, 2, 3, 4, 5]

    abc = [1,2,3,4,5]
    dd = abc[:]
    dd.remove(4)
    print(dd)
    print(abc)
    

    结果是:

    [1, 2, 3, 5]
    [1, 2, 3, 4, 5]

    有人能解释为什么这两件事是不同的吗?我想也是这样。

    1 回复  |  直到 7 年前
        1
  •  3
  •   iElden    7 年前

    .remove() 方法 dd 变量,并且此方法的返回值总是 None


    abc = [1,2,3,4,5]
    dd = abc[:]
    rt_value = dd.remove(4)
    print(rt_value)
    print(dd)
    print(abc)
    

    将产生

    没有
    [1, 2, 3, 5]

        2
  •  0
  •   Pratyush Behera    7 年前