Python遍历列表时删除元素 - scz

tk在科学养猪群里问bluerust、scz是否碰上过这个Python坑,示例1bas = [ 'ba1', 'ba2', 'ba3', 'ba4', 'ba5' ] for ba in bas : print( ba ) if ( ba.find( 'ba' ) != -1 ) : bas.remove( ba ) print( bas ) pr

- 阅读全文 -

讨论Python函数默认参数的坑(2) - scz

接上篇,《讨论Python函数默认参数的坑》讨论Python函数默认参数的坑Digg的程序员应该没有做恰当的单元测试。只看作用域的话,f()默认形参L更像是C语言函数中的静态局部变量。网上有很多文章讲这个坑,但不刻意搜的话,并不"常见"。Python Mutable Defaults Are The Source of All Evil - [2018-08-14] https://florimo

- 阅读全文 -

讨论Python函数默认参数的坑 - scz

最近看了这篇一个Python Bug干倒了估值1.6亿美元的公司 - 苏宓 [2022-08-31] https://mp.weixin.qq.com/s/d9fI1hTfX5IrXAjRI_n4tg故事铺垫很长,本文直奔主题讨论。要点是Digg公司当年的代码中有个函数def get_user_by_ids ( ids=[] )中译文中说「Python只在函数第一次被评估时初始化默认参数,这意味着

- 阅读全文 -