gpt4 book ai didi

pandas - 将文件中的项目动态添加到 ComboBox

转载 作者:行者123 更新时间:2023-12-04 18:29:59 25 4
gpt4 key购买 nike

我正在开发一个应用程序,该应用程序允许用户动态添加到 Excel 文件和从中删除项目。元素数量不限。

我正在寻找一种从 excel 文件中获取项目并将它们传输到 ComboBox 的方法。

为了让自己更清楚:问题不是遍历单元格,而是将单元格值放入 ComboBox。我需要一种方法来捕获给定列中具有值的所有单元格的内容,其中范围的结束未知,然后将值传输到 ComboBox。

Combobox 只接受值,不接受任何空单元格。我也不希望 ComboBox 中的字段显示“无值”。

我尝试遍历单元格和范围方法,但这不会将值放入 ComboBox。

到目前为止我所拥有的是:

    wb = load_workbook (source_file)
ws = wb.active

self.value_1 = ws['B2'].value
self.value_2 = ws['B3'].value
self.value_3 = ws['B4'].value
self.value_4 = ws['B5'].value
self.value_5 = ws['B6'].value
self.value_6 = ws['B7'].value
self.value_7 = ws['B8'].value
self.value_8 = ws['B9'].value
self.value_9 = ws['B10'].value
self.value_10 = ws['B11'].value

stock_items = [ self.value_1 , self.value_2 , self.value_3 , self.value_4 , self.value_5 ,
self.value_6 , self.value_7 , self.value_8 , self.value_9 , self.value_10 ]

self.combo_items_list = [ ]

for stock_item in stock_items :
if stock_item != None :
self.combo_items_list.append (stock_item)

self.combo.addItems(self.combo_items_list)

这按预期工作,但令我烦恼的是,除了必须在 stock_items 列表中添加一个额外条目之外,我还必须为从 excel 文件中获取的每个项目添加一行代码。如果文件中有 5.000 个项目,那么列表中将产生 5.000 行代码和 5000 个条目。

有没有更有效和优雅的方法来处理“计数器”或 Pandas 的问题?

提前致谢。

最佳答案

我找到了一种使用 Pandas 而不是 opnpyxl 很好地做到这一点的方法:

    import pandas as pd
import numpy as np


# get sheet and whole column
sales = pd.read_excel ("Inventory.xlsx")

# filter out any None Values
sales_article = sales ["Artigo"] .dropna()

# transform into list
sales_list = sales_article.values.tolist()

# add list to ComboBox
self.combo.addItems(sales_list)

关于pandas - 将文件中的项目动态添加到 ComboBox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40166797/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com