python中函数默认值使用注意点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中函数默认值使用注意点相关的知识,希望对你有一定的参考价值。

当在函数中定义默认值时,值初始化只会进行一次,就是执行到def methodname时执行。看下面代码:

1
2
3
4
5
6
7
8
from datetime import datetime
 
def test(t=datetime.today()):
  print t
 
if __name__ == "__main__":
  test()
  test()

两次方法调用输出的时间都为同一个值,而不是我们预想当前执行时间。对于上面这种情况,建议用下面的方式实现:

from datetime import datetime
 
def test2(t = None):
    if t is None:
        t = datetime.today()
    print t
 
 
if __name__ == "__main__":
    test()
    test()

  

以上是关于python中函数默认值使用注意点的主要内容,如果未能解决你的问题,请参考以下文章

python基础和注意点概要

如何在Python中定义静态变量

Python中定义函数默认参数值的使用注意事项?

Python snippet(代码片段)

Python函数-3

pandas GroupBy上的方法apply:一般性的“拆分-应用-合并”