xlrd动态变量蟒蛇
问题描述:
我可以把它像这样工作的:xlrd动态变量蟒蛇
book = xlrd.open_workbook(Path+'infile')
sheet = book.sheet_by_index(0)
A, B, C, D = ([] for i in range (4))
A = sheet.col_values(0)
B = sheet.col_values(1)
C = sheet.col_values(2)
D = sheet.col_values(3)
,但我希望是让它像这样的工作:
dyn_var_list = [A, B, C, D]
assert(len(sheet.row_values(0))==len(dyn_var_list))
for index, col in enumerate(sheet.row_values(0)):
dyn_var_list[index].append(col)
然而,到目前为止,我只能得到一个值在我的列表中,使用上面的代码,这是由于在我猜的row_values之后使用了“(0)”,但我不知道如何解决这个问题。
答
尝试
for c in range(sheet.ncols):
for r in range(sheet.nrows):
dyn_var_list[c].append(sheet.cell(r,c).value)
这里sheet.nrows让你在表的行数。
没有办法。这是接近我得到: dyn_var_list = [A,B,C,d] 为i的范围(LEN(dyn_var_list)): \t dyn_var_list [I] = first_sheet.col_values(ⅰ) 然而,现在“打印(dyn_var_list [1])”打印第一个列表,但“打印(A)”不打印(B,C和D相同) –