2012-07-22 50 views
9

tôi xử lý các file Excel bằng cách sử dụng chức năng row_values ​​col_values ​​:Làm cách nào để phát hiện xem ô có trống khi đọc tệp Excel bằng thư viện xlrd không?

import xlrd 
workbook = xlrd.open_workbook(filename) 
sheet_names = workbook.sheet_names() 
for sheet_name in sheet_names: 
    sheet = workbook.sheet_by_name(sheet_name)  
    # ... 
    row_values = sheet.row_values(rownum) 
    # ... 
    col_values = sheet.col_values(colnum) 

Ví dụ, tôi nhận được col_values ​​dạng danh sách. Nếu tôi gặp một ô trống trong một số cột thì sao? Ví dụ một ô (1,1) không trống, một ô (1,2) trống và một ô (1,3) không rỗng? Làm cách nào để phát hiện thấy ô (1,2) trống?

Có đúng là tôi nhận danh sách có chuỗi rỗng làm giá trị của ô trống (đối với hầu hết các chương trình nổi tiếng tạo tệp Excel)?

Trả lời

15

Bạn có thể rõ ràng và kiểm tra xem sheet.cell_type(rowno, colno) in (xlrd.XL_CELL_EMPTY, xlrd.XL_CELL_BLANK) nhưng tài liệu có nêu giá trị là u'' trong trường hợp đó hay không.

Thay vì sử dụng row_values, bạn cũng có thể sử dụng row(n) mà trả về một danh sách các đối tượng Cell.value.cell_type thuộc tính.

Các vấn đề liên quan