繁体   English   中英

python 停止更新变量

[英]python stop updating variables

我编写了这个程序,它从程序开始就停止了时间。 但它想显示我打开 window 的时间,而不是我启动代码的时间。 这是我现在的 function:

def Time():
    global myfont,minute
    realtime = pygame.time.get_ticks() / 1000   
    time = int(pygame.time.get_ticks() / 1000 - minute*60 - realtime) 
    if time < 10:
        label = myfont.render("Zeit: "+ str(minute) + ":0" + str(time) , 1, (255,255,255))
        screen.blit(label, (x - 190, 20))
    else:
        label = myfont.render("Zeit: "+ str(minute) + ":" + str(time) , 1, (255,255,255))
        screen.blit(label, (x - 190, 20))
        
    if time / 60 == 1:
        minute +=1
        time = 0
        label = myfont.render("Zeit: "+ str(minute) + ":" + str(time) , 1, (255,255,255))
        screen.blit(label, (x - 190, 20))

我通过实时减去它运行到那里的时间来尝试它。 但是变量 realtime 不断更新,因此它会显示为 0。当我打开 window 时,有什么办法可以获取 realtime 的值吗?

谢谢你的帮助

打开 window 时设置start_time变量:

start_time = pygame.time.get_ticks() 

计算Time中的时间差:

def Time():
    global myfont,minute

    current_time = pygame.time.get_ticks() 
    delta_time = current_time - start_time

    realtime = delta_time / 1000   
    time = int(delta_time / 1000 - minute*60 - realtime) 

    # [...]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM