我正在尝试从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]
希望这能解释
答案 0 :(得分:0)
您可以使用filtered_data = list(filter(None, data))
或者你可以遍历列表以检查它是否为空
filtered_data = [a for a in data if a != ""]
然后你可以打印filtered_data来查看结果。