如何在python中获得两个日期时间之间的差异?

如何在python中获得两个日期时间之间的差异?,python,datetime,Python,Datetime,问题是它返回的时间正好是00:00:00 如何让2个datetimes在代码本身中工作,或者记录用户完成并开始输入的时间 有什么解决办法吗 因为在让用户播放之前,您分配给结果和结束。此外,如果正文没有意义,则第一个if中的start。只需在顶部设置一次start和end。如果您想测量游戏中的特定时刻,您需要在该时刻调用datetime.datetime.now()。参考start不会这样做: import datetime start = datetime.datetime.now() e

问题是它返回的时间正好是
00:00:00
如何让2个datetimes在代码本身中工作,或者记录用户完成并开始输入的时间

有什么解决办法吗

因为在让用户播放之前,您分配给
结果
结束
。此外,如果正文没有意义,则第一个if中的
start

只需在顶部设置一次
start
end
。如果您想测量游戏中的特定时刻,您需要在该时刻调用
datetime.datetime.now()
。参考
start
不会这样做:

import datetime

start = datetime.datetime.now()  
end = datetime.datetime.now()

enter = ""  
result = end - start  
alphabet = "abcdefghijklmnopqrstuvwxyz"  
print("Welcome to the alphabet game!")  
print("Try to type the alphabet as fast as you can!")  

enter = input("when you are ready type 'go' : ")  
if enter == "go":  
    start  
    print("GO")  
    g = input("")  
if g == alphabet:  
    print("Well done!")  
    print("Your time was: ", result)  

那么,如何从代码主体内部获取时间呢?@user3049392:只需分配给它们,但在第一个
if
之后,仅此而已;)但是
print(“您的时间是:”,datetime.datetime.now()-start)
可能比需要的更精确(即使在这种情况下,它可以忽略不计)。@phresnel:它会告诉您经过的时间,以天、秒和微秒为单位,在打印的
“GO”
与用户输入字母表和回车键之间。这对这个游戏来说已经足够精确了。@phresnel:你想精确到什么程度?我会按照标准路线
print“go”\nstart=time…\n…input()…\nend=time…
。这种模式总是有效的,是最小的,并且在任何情况下都尽可能精确。如前所述,在这种情况下,它是可以忽略不计的,但为什么不把规范模式教给新来者呢?我看不出我在帖子中给出的示例如何不那么精确
start
在打印
GO
之前设置,但该差异小于微秒。我没有指定
end
,我只是计算传递给
print()
函数的表达式中的持续时间。同样,这不会影响“精度”。
alphabet = "abcdefghijklmnopqrstuvwxyz"  
print("Welcome to the alphabet game!")  
print("Try to type the alphabet as fast as you can!")  
start = None

enter = input("when you are ready type 'go' : ")  
if enter == "go":  
    start = datetime.datetime.now()
    print("GO")  
    g = input("")  
if g == alphabet:
    if not start:
        print("We have yet to start!")
    else: 
        print("Well done!")
        print("Your time was: ", datetime.datetime.now() - start)