按列排序二维数组?

想象一个Excel电子表格.我可以选择
专栏并根据项目对记录进行排序
在该列中.我想做同样的事情
具有大二维数组的东西.
最快的方法是什么(计算时间)
做到这一点?
这似乎类似于最近的分类线程
但是这样,"主"桌子是
顺序整数.这个阵列将是
充满任意数据.
谢谢
**发表于http://www.teranews.com **

# 回答1


现在我想到了这个问题,我真的想要
按其中之一来对一系列词典进行排序
每个钥匙.我可以使用:
array.sort(key =某物)
在哪里查看适当的物品
当前行?我无法完全想象如何拉动
字典中的项目.
谢谢
**发表于http://www.teranews.com **
# 回答2


在7月2日,10:35*pm,tobiah 现在我想到了这个问题,我真的想要
按其中之一来对一系列词典进行排序
每个钥匙. *我可以使用:
array.sort(key =某物)
在哪里查看适当的物品
当前行? *我无法完全想象如何拉动
字典中的项目.
谢谢
**从http://www.teranews.comby发表
嗨,托比亚,
尝试这个:
arrayofdicts.sort(
key = lambda dictinArray:dictinArray.get(sortKeyName)
)
- 帕迪.
# 回答3


现在我想到了这个问题,我真的想要
按其中之一来对一系列词典进行排序
每个钥匙.我可以使用:
array.sort(key =某物)
在哪里查看适当的物品
当前行?我无法完全想象如何拉动
字典中的项目.
很抱歉回答自己很多次,但是我来了
提出答案:
从操作员导入itemgetter
thing = [
{'Animal':'duck','工具':'pond'},
{'Animal':'Dog','tool':'骨头'},
{'Animal':'bear','工具':'Hive'}
这是给予的
get = itemgetter('动物')
thing.sort(key = get)
打印东西
**************************************************************************************************
[[
{'工具':'Hive','Animal':'Bear'},
{'工具':'骨头','动物':'dog'},
{'工具':'pond','Animal':'Duck'}
这是给予的
**发表于http://www.teranews.com **
# 回答4


在7月3日,上午7:35,tobiah 现在我想到了这个问题,我真的想要
按其中之一来对一系列词典进行排序
每个钥匙.我可以使用:
array.sort(key =某物)
在哪里查看适当的物品
当前行?我无法完全想象如何拉动
字典中的项目.
手册sez:""键指定使用的一个参数的函数
从每个列表元素中提取比较键:" key = str.lower"
"""
假设"按键之一对一系列字典进行排序
每个"表示"的"表示"词典根据值
存储为每个钥匙之一.
如果dict键是一个常数,您可以这样做:
array.sort(key = lambda adict:adict ['the_constant_key'])
但是,您想要当前的行,然后选择一个1- arg键 功能...要坚持钥匙=山脊,您需要咖喱 额外的arg. 因此(Python 2.5开始): #一次做一次 导入功能 def dict_extract(Adict,akey): 返回Adict [Akey] #每次要排序 current_row_key = whying() sort_key_func = functools.partial(dict_extract,akey = current_row_key) array.sort(key = sort_key_func) 或者,使用装饰零件的程序: temp = [(d [current_row_key],d)d in array中的d] temp.sort() 阵列[:] = [tup [1] for Temp中的TUP] hth, 约翰

标签: python

添加新评论