说我有一个字典:d = {'Abc':5,'Jack':4,'amy':9,'Tom':0,'abc':5}Python按特定定义的规则排序项目
如果我想写一个函数,如果我将该函数传递给内置的排序函数,例如。列表(d).sort(函数)时,排序函数将根据值对任何具有相同值的列表进行排序,并按键(按字母顺序排序)。因此,在这种情况下,d = {'Abc':5,'Jack':4,'amy':9,'Tom':0,'abc':5,'TAM':0}返回['amy' , 'ABC', 'ABC', '杰克', '谭', '汤姆'] 函数应该是这个样子:
def arrange_items(something, thing,**may be a function**):
if something < thing:
return -1
elif something > thing:
return 1
etc
如果我叫some_list.sort(arrange_items),我应该得到排序列表回
预先感谢您
修改规范(另一个问题)的: 如果我有Twitter用户名的字典,字典的在这种格式:
dict = {'JohnZ':{'name': Jonny Zue,'follow':'MiniT',}, etc} # JohnZ is one of the twitter user. The follow means people that JonhZ follows, in this case it is MiniT.
流行的用户的装置的跟随该特定用户,在上述例子中,MINIT的普及是至少一种B的人数/ c中至少有一个用户谁遵循MiniT。
说我有一个twitter用户名称列表,比如说L1 = ['JonhZ','MiniT'等],我想根据用户的流行度来排序L1(更高的流行度第一)。 dict已经在全局命名空间中定义了(我们可以直接访问dict)。这种排序功能的要求是使用L1.sort(pass_function) 我应该如何编写pass_function以便排序会根据流行度自动排序L1的用户。
感谢您的帮助
说什么是“愚蠢”是没有帮助的。对于译员和未来的编码人员来说,内置插件可能是危险和麻烦的。但不是“愚蠢的” – franklin 2013-07-06 19:18:10