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

yipeiwu_com6年前Python基础

当在函数中定义默认值时,值初始化只会进行一次,就是执行到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中函数默认值使用注意点详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用python画个小猪佩奇的示例代码

使用python画个小猪佩奇的示例代码

  基本原理 选好画板大小,设置好画笔颜色、粗细,定位好位置,依次画鼻子、头、耳朵、眼睛、腮、嘴、身体、手脚、尾巴,完事儿。 都知道,Turtle 是 Python 内置的一个...

python实发邮件实例详解

yagmail 实现发邮件 yagmail 可以更简单的来实现自动发邮件功能。 1、安装 pip install yagmail 2、简单举例 import yagmail...

深入讲解Python中面向对象编程的相关知识

深入讲解Python中面向对象编程的相关知识

 Python从第一天开始就是面向对象的语言。正因为如此,创建和使用类和对象是非常地容易。本章将帮助您在使用Python面向对象编程的技术方面所有提高。 如果没有任何以往面向对...

python结合shell查询google关键词排名的实现代码

python结合shell查询google关键词排名的实现代码

最近老婆大人的公司给老婆大人安排了一个根据关键词查询google网站排名的差事。老婆大人的公司是做seo的,查询的关键词及网站特别的多,看着老婆大人这么辛苦的重复着查询工作,心疼啊。所以...

Python3 执行系统命令并获取实时回显功能

下面先给大家介绍下Python3 执行系统命令并获取实时回显 最近在改造一些打包的逻辑,原来在 Windows 下是基于批处理制作的,由于批处理用起来不是很方便,一些实时的计算基本无法胜...