有一个带有值(字符串)的字典 - 名称和数字的(int)。
我希望字典按名称排序。
有:
sorted(dictList, key = lambda (k,v): v['name'])
但是得到 - “字符串索引必须是整数,而不是 str”。
def to_dict(lstData) :
dct = dict();
for dctData in lstData :
dct[dctData['id']] = dctData['name'];
return dct;
Units = to_dict(db.getUnits());
sorted(Units, key = lambda k: Units[k]['name']);
如果我运行- sorted(dctunits, key= lambda x:x[1])
我得到:'long' object is unsubscriptable
。
它正在对错误的值进行排序。在 (x=1L)
builtin sorted = <built-in function sorted>,
global dctUnits = {1L: 'kg', 2L: 'day', 3L: 'week',
4L: 'month', 5L: 'g/L', 6L: 'ug/dL', 7L: 'ng/mL',
8L: 'year', 9L: 'min/day', 10L: 'cm', ...},
key undefined,
x = 1L
X应该是'公斤'..
我错过了什么?