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

373次阅读  |  发布于5年以前

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


    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中函数默认值使用注意点详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8