首页 > 解决方案 > 在 Streamlit 中创建每秒更改的日期时间的动态文本

问题描述

我想在 streamlit webui 上显示每秒datatime.now刷新的输出。1

from datetime import datetime
datetime.now()
# print this output every one second
datetime.datetime(2020, 5, 19, 4, 22, 40, 921985)

我已经尝试过的


#!/usr/bin/env python3

import streamlit as st
from datetime import datetime

timenow = str(datetime.now())
st.write(timenow)

标签: streamlit

解决方案


我想这取决于您是否需要一秒钟的分辨率,但解决方案大约是:

import time
from datetime import datetime
import streamlit as st

t = st.empty()

while True:
    t.markdown("%s" % str(datetime.now()))
    time.sleep(1)

while 循环使该过程永远进行。通过st.empty()在循环之外进行调用,我们不断修改t变量。在每次循环重复时,markdown 字符串的值都会被datetime.now()参数覆盖。


推荐阅读