使用openxlpy嵌套

2024-04-26 11:20:07 发布

您现在位置:Python中文网/ 问答频道 /正文

for status in sheet['E']:
   if status.value == 'completed':
      for price in sheet['G']:
         print(price.value)

似乎如果语句不起作用,因为价格.价值正在打印的。我错过了什么?你知道吗

E
---------
completed
cart
None
completed
processing
completed

G
----------
120
30

300
50
450

我想打印他们的状态是什么价格已完成。所以预期结果是:

120, 300, 450

Tags: innoneforifvaluestatus价格语句
1条回答
网友
1楼 · 发布于 2024-04-26 11:20:07

这样的方法应该有用:

import openpyxl

wb = openpyxl.load_workbook('C:/workbook.xlsx')
ws = wb.get_sheet_by_name('Sheet1')
for i in range(1, 10): # You can use 32767 to get all rows
    if ws.cell(row=i, column=5).value == "completed": # column 5 is column E
        print(ws.cell(row=i, column=7).value) # column 7 is column G

编辑

似乎openpyxl使用了基于1的索引,而不是基于0的索引。因此,相应地调整值。你知道吗

相关问题 更多 >