【发布时间】:2013-04-05 14:48:54
【问题描述】:
我正在尝试根据子列表中的第二个元素对列表列表进行排序。
样本数据:
[[u'm3u33mm534o', 14, 23], [u'2w3dfbv333g', 20, 34], [u'7kv903nfjfr9', 0, 35]]
排序:
out.sort(key=lambda x: float(x[1]))
错误:
TypeError: float() argument must be a string or a number
这里有什么问题?
【问题讨论】:
-
样本数据没有问题。真实数据中的某些东西不是字符串或数字。
-
最可能的问题是
out包含您显示的示例数据以外的其他内容。 -
operator.itemgetter(1) -
如果您包含 SSCCE (sscce.org),您可能会获得更好的帮助。
-
你们说得对,我刚刚在我的数据中发现了异常。解决了这个问题,它奏效了。谢谢!
标签: python list python-2.7 lambda