Tôi có một tệp Excel
Arm_id DSPName DSPCode HubCode PinCode PPTL
1 JaVAS 01 AGR 282001 1,2
2 JaVAS 01 AGR 282002 3,4
3 JaVAS 01 AGR 282003 5,6
Tôi muốn lưu một chuỗi trong biểu mẫu Arm_id,DSPCode,Pincode
. Định dạng này có thể định cấu hình, tức là nó có thể thay đổi thành DSPCode,Arm_id,Pincode
. Tôi lưu nó trong một danh sách như:
FORMAT = ['Arm_id', 'DSPName', 'Pincode']
Làm cách nào để đọc nội dung của một cột cụ thể với tên được cung cấp, với điều kiện FORMAT
là có thể định cấu hình?
Đây là những gì tôi đã thử. Hiện tại tôi có thể đọc tất cả nội dung trong tệp
from xlrd import open_workbook
wb = open_workbook('sample.xls')
for s in wb.sheets():
#print 'Sheet:',s.name
values = []
for row in range(s.nrows):
col_value = []
for col in range(s.ncols):
value = (s.cell(row,col).value)
try : value = str(int(value))
except : pass
col_value.append(value)
values.append(col_value)
print values
Đầu ra của tôi là
[[u'Arm_id', u'DSPName', u'DSPCode', u'HubCode', u'PinCode', u'PPTL'], ['1', u'JaVAS', '1', u'AGR', '282001', u'1,2'], ['2', u'JaVAS', '1', u'AGR', '282002', u'3,4'], ['3', u'JaVAS', '1', u'AGR', '282003', u'5,6']]
Sau đó, tôi lặp đi lặp lại values[0]
để cố gắng tìm ra FORMAT
nội dung trong values[0]
đó và sau đó lấy chỉ mục của Arm_id, DSPname and Pincode
trong values[0]
và sau đó từ vòng lặp tiếp theo, tôi biết chỉ số của tất cả các FORMAT
yếu tố, từ đó biết mình cần lấy giá trị nào.
Nhưng đây là một giải pháp kém.
Làm cách nào để lấy giá trị của một cột cụ thể có tên trong tệp excel?
dict()
hoặc tạo lớp dữ liệu của riêng bạn.