为什么python中的默认日期时间没有改变?

为什么python中的默认日期时间没有改变?,python,python-3.x,Python,Python 3.x,下面是我的代码。在这里,get\u time()即使在5秒后也返回相同的值,为什么会这样 from datetime import datetime import time def get_time(time_now=datetime.now()): print('Current time', time_now) get_time() time.sleep(5) get_time() Python的默认参数在定义函数时计算一次,而不是每次调用函数时。因此,如果您希望在每个函数

下面是我的代码。在这里,
get\u time()
即使在5秒后也返回相同的值,为什么会这样

from datetime import datetime

import time


def get_time(time_now=datetime.now()):
    print('Current time', time_now)


get_time()
time.sleep(5)
get_time()

Python的默认参数在定义函数时计算一次,而不是每次调用函数时。因此,如果您希望在每个函数调用中计算
time\u now
,那么您必须这样做

def get_time():
    print('Current time', datetime.now())

Python的默认参数在定义函数时计算一次,而不是每次调用函数时。因此,如果您希望在每个函数调用中计算
time\u now
,那么您必须这样做

def get_time():
    print('Current time', datetime.now())