找不到与 xlrd 对象等效的 openpyxl
Having trouble finding openpyxl equivalent of xlrd objects
我使用 xlrd
包编写了我的代码,用于从具有多个工作表的 excel 文件中提取特定信息。我部分匹配一个字符串并在下一列中获取值,有时,我根据需要在同一列的下一行中获取值。
下面的代码是我使用 xlrd
的代码的一部分,它可以很好地在下一列中选择值:
import xlrd
workbook = xlrd.open_workbook('sample_data.xlsx')
for sheet in workbook.sheets():
for rowidx in range(sheet.nrows):
row = sheet.row(rowidx)
row_val = sheet.row_values(rowidx)
for colidx, cell in enumerate(row):
if cell.value == "Student number":
sheet_name.append(sheet.name)
print("Sheet Name =", sheet.name)
customer_num.append(sheet.cell(rowidx,colidx+1).value)
print(cell.value + "=" , sheet.cell(rowidx,colidx+1).value)
但我现在需要使用 openpyxl
而不是 xlrd
来实现这一点。这是一个技术要求。而且我无法从 openpyxl
包中找到合适的对应项。我也是 Python 的新手。
如果对 xlrd
和 openpyxl
都有很好了解的人可以帮助我如何使用 openpyxl
复制上述代码,那将非常有帮助并节省时间。非常感谢。
for ws in wb:
for row in ws:
for cell in row:
if cell.value == "Student number":
print(sheet.title)
print("{0} = {1}".format(cell.value, cell.offset(column=1).value))
我使用 xlrd
包编写了我的代码,用于从具有多个工作表的 excel 文件中提取特定信息。我部分匹配一个字符串并在下一列中获取值,有时,我根据需要在同一列的下一行中获取值。
下面的代码是我使用 xlrd
的代码的一部分,它可以很好地在下一列中选择值:
import xlrd
workbook = xlrd.open_workbook('sample_data.xlsx')
for sheet in workbook.sheets():
for rowidx in range(sheet.nrows):
row = sheet.row(rowidx)
row_val = sheet.row_values(rowidx)
for colidx, cell in enumerate(row):
if cell.value == "Student number":
sheet_name.append(sheet.name)
print("Sheet Name =", sheet.name)
customer_num.append(sheet.cell(rowidx,colidx+1).value)
print(cell.value + "=" , sheet.cell(rowidx,colidx+1).value)
但我现在需要使用 openpyxl
而不是 xlrd
来实现这一点。这是一个技术要求。而且我无法从 openpyxl
包中找到合适的对应项。我也是 Python 的新手。
如果对 xlrd
和 openpyxl
都有很好了解的人可以帮助我如何使用 openpyxl
复制上述代码,那将非常有帮助并节省时间。非常感谢。
for ws in wb:
for row in ws:
for cell in row:
if cell.value == "Student number":
print(sheet.title)
print("{0} = {1}".format(cell.value, cell.offset(column=1).value))