西大 发表于 2017-5-6 13:58:17

Python默认参数为list,dict的话,只会初始化一次

  最近发现一个非常诡异的BUG,找了半天,才知道python函数的默认参数为dict的话,只会初始化一次
  汗,孤陋寡闻了。。
  如 def a( xxx = {} ):
  xxx.apend(11)  
  print xxx
  a()
  a()
  a()
  输出为
  11
  11 11
  11 11 11
  而非
  11
  11
  11
  切记切记,共习之
页: [1]
查看完整版本: Python默认参数为list,dict的话,只会初始化一次