为什么我的Streamlit应用程序会多次打开?

我正在尝试使用以下方式启动Streamlit应用程序

import os
os.popen("streamlit run stockXchange.py")

运行此代码时,将有无限数量的流线型窗口,每3秒钟左右就会弹出一个窗口。阻止这些窗口弹出的唯一方法是完全关闭输出窗口。 (我正在使用PyCharm)

这是我的代码:

import os
import streamlit as st
class Streamlit:


    def __init__(self):
        Streamlit.setup()


    def setup(self):
        st.title("StockXchange GUI")
        query = st.text_input("Enter company name:")
        if st.button("Go"):
            #calls the application function
            load(query)



if __name__ == "__main__":
    print(starttext)
    print(os.popen("streamlit run stockXchange.py").read())
    #Workaround 'missing 1 required positional argument: 'self'' Error
    Streamlit.setup(Streamlit)

我希望只弹出一个窗口,而不是无限多个窗口。

有什么办法可以解决这个问题?

li55776 回答:为什么我的Streamlit应用程序会多次打开?

使用Streamlit,您无需创建类包装即可运行Streamlit应用程序。

假设您的stockXchange.py是简化的应用程序,则应从命令行或from the PyCharm console运行,如下所示:

streamlit run stockXchange.py

班上所有以下几行内容都应放入该文件中:

st.title("StockXchange GUI")
query = st.text_input("Enter company name:")
if st.button("Go"):
    #the rest of stockXchange.py pertaining to the query

获得无限的精简窗口的原因是,以下行在程序执行方面创建了无限循环:

if __name__ == "__main__":
    os.popen("streamlit run stockXchange.py")
本文链接:https://www.f2er.com/3129696.html

大家都在问