我编写了如下代码,以便在for循环中为Streamlight应用程序创建复选框. 我如何开发代码来判断框是否被单击?我是用下面的方法做的,但不是这样的.


#I created data frame called df in another function.

names = ["df1","df2"]

def create_checkboxes (names :List[str], df):
  checkboxes = {}
  for name in names:
     checkboxes[name] = st.sidebar.checkbox(name, key=name, value=True)


  dfs = []
  for key, value in checkboxes.items():
      checkboxes[key] == "df1"
      dfs.append(df_list[0])
      checkboxes[key] == "df2"
      dfs.append(df_list[1])

   if len(dfs) > 1:
      df = pd.concat(dfs)

return df, checkboxes

推荐答案

您可以try 此方法,使用if条件.
首先将CheckBox xex值设置为False,但如果需要,仍可以将其保留为True:

checkboxes[name] = st.sidebar.checkbox(name, key=name, value=False)

将循环重构为:

...
dfs = []
for key, value in checkboxes.items():
    if value:
        dfs.append(df[key])

if len(dfs) > 1:
    df = pd.concat(dfs)
...

Python相关问答推荐

Pandas 密集排名具有相同值,按顺序排列

X射线扫描显示Docker中的pip漏洞,尽管图像中未安装pip

使用pandas MultiIndex进行不连续 Select

预期LP_c_Short实例而不是_ctyles.PyCStructType

如何使用scikit-learn Python库中的Agglomerative集群算法以及集群中声明的对象数量?

强制venv在bin而不是收件箱文件夹中创建虚拟环境

如何使用上下文管理器创建类的实例?

Python plt.text中重叠,包adjust_text不起作用,如何修复?

Pythind 11无法弄清楚如何访问tuple元素

pandas DataFrame GroupBy.diff函数的意外输出

Pandas实际上如何对基于自定义的索引(integer和非integer)执行索引

Polars LazyFrame在收集后未返回指定的模式顺序

如何访问所有文件,例如环境变量

处理带有间隙(空)的duckDB上的重复副本并有效填充它们

如何获取numpy数组的特定索引值?

运输问题分支定界法&

如果值发生变化,则列上的极性累积和

当点击tkinter菜单而不是菜单选项时,如何执行命令?

如何从列表框中 Select 而不出错?

OpenCV轮廓.很难找到给定图像的所需轮廓