我想根据特定属性对包含sql查询中元组的数组进行排序。我有一张这样的桌子:
+-----+------------+-----------+
| lid | name | num |
+-----+------------+-----------+
| 2 | Ruby's | 0 |
| 3 | Five Guy's | 1 |
| 4 | Habana's | 0 |
+-----+------------+-----------+
我想根据它们的num属性打印出名字,也就是说,我希望输出是:
Five Guy's
Ruby's
Habana's
我正试图通过以下方式实现这一点:
...
data = cursor.fetchall()
...
def getKey(name):
return name['num']
sorted(data, key=getKey)
for row in data:
print row['name']
但这会按以下顺序输出数据:
Ruby's
Five Guy's
Habana's
我对python非常陌生,我只是想搞乱一些事情,所以如果有任何明显的问题,请告诉我
我正在运行python=2.7.10
问题是
sorted()
返回列表的新排序副本。如果要对ion place进行排序,请使用data.sort(key=getKey)
(如果data
是一个列表)。您需要将sorted()
的返回值保存到某个对象以正确使用它:相关问题 更多 >
编程相关推荐