def f(x, arr=[]) 把可变对象作默认参数的问题是?

Python

  1. A.语法错误,解释器在 def 处直接报错
  2. B.arr 会被解释器自动转换成不可变的 tuple 以防修改
  3. C.每次调用都会重新新建一个空列表,因此不会有任何问题
  4. D.默认列表只在定义时创建一次,多次调用共享并累积修改