Ты очень близко.Если вы хотите построить словарь из листа, который содержит только ключи и значения, в первых двух столбцах вы можете просто сделать
print dict(sh.row_values(rownum) for rownum in range(sh.nrows))
Как упоминал Джон Y, если вам нужно извлечь два конкретных столбцас индексами i (ключи) и j (значения) вы можете сделать вместо этого:
print dict((sh.cell_value(rownum, i), sh.cell_value(rownum, j)) for rownum in range(sh.nrows))
Ключевым моментом является то, что dict()
может создать словарь из повторяемого набора (ключ, значение).