Openpyxl以数字而不是文本的形式返回值

时间:2018-08-03 03:06:09

标签: python openpyxl

我正在尝试加载Excel文件以获取用于显示目的的值。

wb = load_workbook(xlsx_file, data_only=True)
first_sheet = wb.get_sheet_names()[0]
ws = wb.get_sheet_by_name(first_sheet)

for row in ws.rows[1:]:
    serial_no = row[0].value

我的excel文件中的某些值包含纯数字(例如91234567,它返回给我91234567.0),有时值包含字符串和数字的混合(例如1234abc567)。有没有办法让我的值以字符串而不是浮点数的形式获取?

有关更多信息,我正在使用openpyxl 2.3.5。

1 个答案:

答案 0 :(得分:0)

for row in ws.rows[1:]:
    try:
        serial_no = str(int(row[0].value))
    except ValueError:
        serial_no = str(row[0].value)