只有几次获得相同的数据

时间:2017-09-08 13:07:15

标签: python django excel

我想解析excel并打印出来。我写的像

files = glob.glob('./data/*.xlsx')

for x in files:
    if "$" not in x:
      print(x)
      book3 = xlrd.open_workbook(x)
      sheet3 = book3.sheet_by_index(0)
      cells = [
    ('user_id', 0, 4),
    ('name', 0, 5),
    ('nationality', 1, 4),
    ('domitory', 1, 5),
    ('group', 1, 6),
      ]
      dict_data = OrderedDict()
      for key, rowy, colx in cells:
         try:
            dict_data[key] = sheet3.cell_value(rowy, colx)
         except IndexError:
            dict_data[key] = None

         print(dict_data)

所以,我得到了像

这样的结果
OrderedDict([('user_id', '1'), ('name', 'Blear'), ('nationality', 'America'), ('domitory', 'A'), ('group', 1)], [('user_id', '1'), ('name', 'Blear'), ('nationality', 'America'), ('domitory', 'A'), ('group', 1)], [('user_id', '1'), ('name', 'Blear'), ('nationality', 'America'), ('domitory', 'A'), ('group', 1)])

Excel是 excel

所以我真的不明白为什么我只有几次得到一个数据。我想每个数据只获得一次数据。我怎么能解决这个问题?我不认为缩进是错误的。

1 个答案:

答案 0 :(得分:0)

你需要修改缩进:

for key, rowy, colx in cells:
    try:
        dict_data[key] = sheet3.cell_value(rowy, colx)
    except IndexError:
        dict_data[key] = None
# <--- move left print
print(dict_data)