打印功能不会 return 来自 xlsx sheet 的数据 Python with openpyxl

Print function wont return data from xlsx sheet in Python with openpyxl

我正在寻找从 xlsx 文档中导入一行字符串并将它们迭代到 Python 中以用作其他地方的变量。现在我只是想把它们打印出来作为代码工作的证明。

出于某种原因,代码运行没有任何错误,但没有打印出任何内容。

根据我在 openpyxl 文档中阅读的内容,这应该可以正常工作,但我不知道问题出在哪里。

我假设这与我的 if 语句有关,但据我所知一切都已检查。

可能是识别列有问题?

为了澄清,我要访问的列是 'B'。 B 的第一个单元格是 header,单元格 2-max sheet 是数据。

我的代码:

from openpyxl import load_workbook

path = "/Users/xxx/Desktop/alpha list test.xlsx"
book = load_workbook(path)
sheet = book['Sheet1']

column_name = 'username'
for column_cell in sheet.iter_cols(1, sheet.max_column):
    if column_cell[0] == column_name:
        B = 0
        for data in column_cell[1:]:
            htag = data.value
            print(htag)

这导致:

Process finished with exit code 0

路径中的/xxx/为隐藏个人信息

column_cell 是 object 的元组。所以 column_cell[0] 是第一个元组,但 object 不会等于字符串值

if column_cell[0] == column_name:

尝试使用 value 属性,否则它将与您的 header 不匹配,并且永远不会继续打印代码部分。

if column_cell[0].value == column_name: