#-*- encoding=utf-8 -*-
import operator
#按字典值排序(默认为升序)
x = {1:2, 3:4, 4:3, 2:1, 0:0}
sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1))
print sorted_x
#[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
#如果要降序排序,可以指定reverse=True
sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True)
print sorted_x
#[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]
#或者直接使用list的reverse方法将sorted_x顺序反转
#sorted_x.reverse()
#取代方法是,用lambda表达式
sorted_x = sorted(x.iteritems(), key=lambda x : x[1])
print sorted_x
#[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
sorted_x = sorted(x.iteritems(), key=lambda x : x[1], reverse=True)
print sorted_x
#[(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]
#包含字典dict的列表list的排序方法与dict的排序类似,如下:
x = [{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]
sorted_x = sorted(x, key=operator.itemgetter('name'))
print sorted_x
#[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]
sorted_x = sorted(x, key=operator.itemgetter('name'), reverse=True)
print sorted_x
#[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]
sorted_x = sorted(x, key=lambda x : x['name'])
print sorted_x
#[{'age': 10, 'name': 'Bart'}, {'age': 39, 'name': 'Homer'}]
sorted_x = sorted(x, key=lambda x : x['name'], reverse=True)
print sorted_x
#[{'age': 39, 'name': 'Homer'}, {'age': 10, 'name': 'Bart'}]
分享到:
相关推荐
键必须是唯一且不可变的,而值可以是任意数据类型,包括列表(list),字典(dict),或者Python中的任何其他数据类型。通常情况下,字典的值不是列表,但如果需要在字典中使用列表来存储多个值,可以这样操作。 当...
综上所述,本文介绍了如何对Python字典进行值排序并取出值最大的前n个键值对的方法。我们学习了字典的基本操作、`sorted()`函数、`set()`集合、`lambda`函数的使用,以及如何结合内置函数`min()`和`max()`来实现字典...
d_order=sorted(d.items(),key=lambda x:x[1],reverse=False) # 按字典集合中,每一个元组的第二个元素排列。 # x相当于字典集合中遍历出来的一个元组。 print(d_order) # 得到: [('a', 1), ('b', 2
本文实例分析了python字典排序的方法。分享给大家供大家参考。具体如下: 1、 准备知识: 在python里,字典dictionary是内置的数据类型,是个无序的存储结构,每一元素是key-value对: 如:dict = {‘username’:’...
这里,`sorted(dict.keys())`用于获取字典的第一个元素的所有键,并按字母顺序排序,存储在列表`a`中,然后将`a`赋值给`header`作为列名。 接下来,我们使用内置的`csv`模块来写入CSV文件。打开文件时,使用`'a'`...
如果需要按照字典的键进行排序,方法基本与按值排序类似,只需将`key`参数的lambda表达式中的`d[1]`改为`d[0]`,因为键是元组的第一个元素。以下是代码示例: ```python dic = {'a':31, 'bc':5, 'c':3, 'asd':4,...
4. **字典按值排序的其他方法** - 对于包含字典的列表,我们可以使用类似的方法,但这次需要处理嵌套的键。例如,如果我们有一个包含字典的列表`x`,其中每个字典都有一个'age'键,我们可以这样排序: ```python ...
之后,我们按照上述方法对键进行排序,并通过遍历排序后的键列表,逐个取出并打印了倒序排列的字典值。 这段实例代码可以给我们如下启示: 1. sorted()函数可以对字典的键进行排序,并通过reverse参数控制排序方向...
**按值排序:** 如果需要按值(value)进行排序,也需要使用`sorted()`函数,但排序依据改为字典的值。考虑到Python的字符串排序是按照Unicode编码的顺序,不是按照拼音,所以对于中文字符,它们的顺序可能不符合...
在Python编程语言中,"字典序"是一个与字典数据结构相关的概念,尤其是在讨论排序、比较或遍历字典时。..."python字典序.docx"文档很可能会深入探讨这些主题,包括字典的实现原理、排序方法以及在不同场景下的应用。
本文实例讲述了Python实现字典排序、按照list中字典的某个key排序的方法。分享给大家供大家参考,具体如下: 1.给字典按照value按照从大到小排序 排序 dict = {'a':21, 'b':5, 'c':3, 'd':54, 'e':74, 'f':0} new_...
在Python编程语言中,字典是一种非常重要的数据结构,它以键值对的形式存储数据。...希望以上的讲解能帮助你更好地理解和使用`sorted()`函数,如果你有更多关于Python字典排序的问题,欢迎继续深入学习和实践。
在Python中,字符串、列表、字典和集合是四种基本的数据结构,它们提供了许多内置方法来操作数据。下面详细地介绍这些数据结构的方法和用法。 首先,我们来看字符串(String)的相关方法: 1. capitalize():将...
通过上述方法,我们可以灵活地对Python字典的键或值进行排序。了解并熟练掌握这些技巧对于处理字典数据时的排序需求至关重要。希望这些内容对您在Python编程实践中有所帮助。如果您有任何问题或需要进一步的解释,请...
"Python练习题"这个资源包含了1到11个单元的练习题目,旨在帮助学习者巩固和深化对Python基础概念的理解,特别是元组、列表、字典以及类这四个核心数据结构的运用。下面我们将详细探讨这些知识点。 **元组(Tuples)*...
字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的。因此,为了使统计得到的结果更方便查看需要进行排序。Python中字典的排序分为按“键”排序和按“值”排序。 按“值...
在Python编程中,有时我们需要对列表中的字典元素进行排序,特别是在处理JSON数据时。本文将详细介绍如何在Python中实现这一操作。 首先,让我们理解问题的背景。假设我们有两个JSON对象,a 和 b,它们的结构如下:...
在Python编程语言中,字典是一种非常重要的数据结构,它...需要注意的是,虽然字典排序在某些场景下很有用,但在其他情况下,可能更适合使用列表或者其他数据结构,如集合(set)或元组(tuple),取决于你的具体需求。
在我们的场景中,我们需要对字典的`items()`进行排序,因为`items()`方法会返回一个包含字典所有键值对的元组列表。 以下是一个例子: ```python record = {'a':89, 'b':86, 'c':99, 'd':100} ``` 在这个字典中,...