我正在使用openpyxl评估工作表。 此工作表中有一行包含合并单元格中的列组名。 我创建了一个dict列表,其中column\u group是键,column number是值
col_groups= [{u'Layer': 1}, {u'Single Ended': 17},\
{u'Single Ended': 22}, {u'Edge Coupled': 27}]
现在我想创建一个组名:(start)_列:结束列)使用列组的词典
这是我能得到的最接近的。你知道吗
group_cols = []
for x, d in enumerate(col_groups):
try:
group_cols.append({col_groups[x].keys()[0]:(col_groups[x].values()[0],(col_groups[(x+1)].values()[0] - 1))})
except:
group_cols.append({col_groups[x].keys()[0]:(col_groups[x].values()[0],tap_sh.max_column)})
在python shell提示符处键入group\u cols可以得到:
[{u'层':(1,16)},{u'单端':(17,21)},{u'单端':(22,26)},{u'边耦合':(27,33)}]
输出看起来不错,但我的方法感觉有点黑客-任何建议,以更pythonic将不胜感激
字典是错误的结构,元组(name,idx)会更好,但是你可以使用它。你知道吗
try语句唯一失败的时候,是当您位于列表的末尾,并且尝试访问最后一个元素之后的元素时。在这种情况下,使用if语句可能更好。你知道吗
相关问题 更多 >
编程相关推荐