Python:用一个简单的字符串获取最新的日期时间

Python:用一个简单的字符串获取最新的日期时间,python,string,date,datetime,time,Python,String,Date,Datetime,Time,如何在每次打印字符串时获取最新时间: 我使用了以下代码: 当我运行此代码时,时间t1显示一个恒定的时间值: print (s2) Einstein is a programming genius since 2018-06-24 17:33:57.484815 Einstein is a programming genius since 2018-06-24 17:33:57.484815 Einstein is a programming genius since 2018-06-24 1

如何在每次打印字符串时获取最新时间:

我使用了以下代码:



当我运行此代码时,时间t1显示一个恒定的时间值:

print (s2)
Einstein is a programming genius since 2018-06-24 17:33:57.484815
Einstein is a programming genius since 2018-06-24 17:33:57.484815
Einstein is a programming genius since 2018-06-24 17:33:57.484815
是否有一种方法可以自动更新“t1”的值,或者换句话说,如何在每次运行代码时更新时间? 例如:

print(s2)
Einstein is a programming genius since 2018-06-24 17:33:57.484815
Einstein is a programming genius since 2018-06-24 17:34:13.484815
Einstein is a programming genius since 2018-06-24 17:35:26.484815
先谢谢你


(我只是编程和python的新手)

尝试将日期时间直接传递给字符串,而不是将其存储在变量中

Ex:

import datetime
import time

s = "%s is a programming %s since %s"
print ( s %("Einstein", "genius", datetime.datetime.now()))
time.sleep(5)
print (s %("Einstein", "genius", datetime.datetime.now()))
Einstein is a programming genius since 2018-06-24 19:07:15.697000
Einstein is a programming genius since 2018-06-24 19:07:20.700000
输出:

import datetime
import time

s = "%s is a programming %s since %s"
print ( s %("Einstein", "genius", datetime.datetime.now()))
time.sleep(5)
print (s %("Einstein", "genius", datetime.datetime.now()))
Einstein is a programming genius since 2018-06-24 19:07:15.697000
Einstein is a programming genius since 2018-06-24 19:07:20.700000

尝试将datetime直接传递给字符串,而不是将其存储在变量中

Ex:

import datetime
import time

s = "%s is a programming %s since %s"
print ( s %("Einstein", "genius", datetime.datetime.now()))
time.sleep(5)
print (s %("Einstein", "genius", datetime.datetime.now()))
Einstein is a programming genius since 2018-06-24 19:07:15.697000
Einstein is a programming genius since 2018-06-24 19:07:20.700000
输出:

import datetime
import time

s = "%s is a programming %s since %s"
print ( s %("Einstein", "genius", datetime.datetime.now()))
time.sleep(5)
print (s %("Einstein", "genius", datetime.datetime.now()))
Einstein is a programming genius since 2018-06-24 19:07:15.697000
Einstein is a programming genius since 2018-06-24 19:07:20.700000

您可以创建一个返回最新值的函数:

def make_time():
    return str(datetime.datetime.now())

s = "%s is a programming %s since %%s" % ("Einstein", "genius")
print(s % make_time())
print(s % make_time())

您可以创建一个返回最新值的函数:

def make_time():
    return str(datetime.datetime.now())

s = "%s is a programming %s since %%s" % ("Einstein", "genius")
print(s % make_time())
print(s % make_time())

Python没有可以自行更改其值的“神奇”变量。对变量(如
s2
的引用将导致它查找上次分配给它时放在那里的同一对象,并且它将保持不变。要使Python在每次引用时都执行一些操作,您可能需要使用函数。e、 例如,将s2设为一个函数,如下所示:

def s2():
    t1 = str(datetime.datetime.now())
    s1 = "%s is a programming %s since" +" "+ t1 
    return s1%("Einstein", "genius")

现在,使用
s2()
在代码中只使用了
s2
,Python将重新执行代码并生成一个包含当前日期/时间的新字符串。

Python没有可以自行更改其值的“魔法”变量。对变量(如
s2
的引用将导致它查找上次分配给它时放在那里的同一对象,并且它将保持不变。要使Python在每次引用时都执行一些操作,您可能需要使用函数。e、 例如,将s2设为一个函数,如下所示:

def s2():
    t1 = str(datetime.datetime.now())
    s1 = "%s is a programming %s since" +" "+ t1 
    return s1%("Einstein", "genius")

现在,使用
s2()
在代码中只使用了
s2
,Python将重新执行代码并生成一个包含当前日期/时间的新字符串。

非常感谢。我完全不知道如何定义函数,或者函数是什么。非常感谢您的指导,非常感谢。我完全不知道如何定义函数,或者函数是什么。非常感谢您的指导。谢谢您,Rakesh,我也将尝试此代码。Leo的代码对我的理解——就我现在的编码能力而言,似乎更容易理解。非常感谢你花时间回答我的问题。谢谢你,拉凯什,我也会试试这个代码。Leo的代码对我的理解——就我现在的编码能力而言,似乎更容易理解。非常感谢你花时间回答我的问题。谢谢你尤金。我们将尝试此代码,并将其作为备选方案牢记在心。谢谢尤金。应尝试使用本规范,并将其作为备选方案牢记在心。