2

我有一个 2 列的 excel 电子表格。像这样的东西

|科尔A | 科尔B |
|钥匙 | 价值 |
|1 | 测试 |
|2 | 测试2 |
|3 | 测试4 |

我想将这两列读入字典。我目前有这个工作,但无法弄清楚如何提取每个键值对

  sh = wb.sheet_by_index(0)
  for rownum in range(sh.nrows):
      print sh.row_values(rownum)
4

1 回答 1

4

你很亲密。如果您想从仅包含键和值的工作表构建字典,在前两列中,您可以简单地执行

print dict(sh.row_values(rownum) for rownum in range(sh.nrows))

正如 John Y 所提到的,如果您需要提取两个具有索引 i(键)和 j(值)的特定列,您可以这样做:

print dict((sh.cell_value(rownum, i), sh.cell_value(rownum, j)) for rownum in range(sh.nrows))

关键是dict()可以从(键,值)元组的可迭代中构建字典。

于 2011-10-31T13:30:02.657 回答