在python中跳过空值

时间:2017-12-27 09:49:40

标签: python excel xlrd

我正在尝试从excel表中读取数据 使用代码

private IEnumerable<ContextMenuStrip> EnumerateContextMenus(Form form)
{
  const BindingFlags bindingFlags = BindingFlags.NonPublic | BindingFlags.Instance;
  var fields = form.GetType().GetFields(bindingFlags);
  return fields
    .Where(x => x.FieldType == typeof(ContextMenuStrip))
    .Select(x => x.GetValue(form) as ContextMenuStrip);
}

我得到的答案就是这个

import xlrd

input= raw_input("put in the path name for file")
book=xlrd.open_workbook(input)
print book.nsheets
print book.sheet_names()

ws=book.sheet_by_index(0)
for rows in range(0,14):
    data= ws.row_values(rows)
    print data

有没有办法跳过 [u'',u'',u'',u'',值,以便我可以将其余数据保存在另一个变量中。

答案:问题是我直接获取了用它编码的unicode值。但如果我打印索引值,那么它就没有了。

所以,我直接使用打印数据[0],数据[1],数据[2]

希望这能解释

1 个答案:

答案 0 :(得分:0)

您可以使用filtered_data = list(filter(None, data)) 或者你可以遍历列表以检查它是否为空 filtered_data = [a for a in data if a != ""] 然后你可以打印filtered_data来查看结果。