python在数组中获取excel表格名称,并将其放入条件中



我想要的是加载excel表格这是("gx_project .xlsx")为我的例子。然后获取工作表名称并将它们放入数组中。之后,如果这些页名以"_ID"结尾我想把它们分开。对于这段代码,它们是:[0],[1],[2],[3],[4],[11],我想稍后使用"wb_obj.worksheets[x]"来访问和处理它们。

import openpyxl
from openpyxl.styles import Font
wb = openpyxl.load_workbook("gx_projectid.xlsx")  ## EXCELI YUKLEME
sheet = wb.active
Sheet_Names = [wb.sheetnames]
print("original sheet names:", Sheet_Names)

sheets = []
for row in Sheet_Names:
for cell in row:
sheets.append(cell.split())
print("Put it in an array : ",sheets)

当前输出:

original sheet names: [['Reserved_ID', 'PowerLED_ID', 'RC_ID', 'Brand_ID', 'Product_ID', 'Panel', 'EDID', 'Cabinet', 'DEC', 'EnergyClass', 'CompatibleConfig', 'Project_ID', 'Project-id']]
Put it in an array :  [['Reserved_ID'], ['PowerLED_ID'], ['RC_ID'], ['Brand_ID'], ['Product_ID'], ['Panel'], ['EDID'], ['Cabinet'], ['DEC'], ['EnergyClass'], ['CompatibleConfig'], ['Project_ID'], ['Project-id']]

idk如何检查工作表名称是否以"_ID"因为我试过:

for i in range (len(sheets)):
print("sheet names",[i],": ",sheets[i])
# if sheets[i].endswith("_ID']"):

,我得到了一些错误,因为它的列表不是字符串类型

第一个小提示,尝试使用snake_case格式命名变量和函数。CamelCase命名格式主要用于python中的类命名。我建议查阅pep8文档。现在让我们进入主要问题。您正在尝试对列表数据类型使用str函数。首先,您应该将数据转换为str:

for i in range (len(sheets)):
str_sheet_name = str(sheets[i]) # converting to str
if str_sheet_name.endswith("_ID']"):
print(str_sheet_name)

这个应该可以工作。请让我知道

最新更新