python字典排序

python中68个内置函数的总结

若如初见. 提交于 2019-12-09 20:09:33
内置函数 内置函数就是python给你提供的, 拿来直接用的函数, 比如print., input等. 截止到python版本3.6.2 python一共提供了68个内置函数. #68个内置函数 # abs()   dict()   help()   min()   setattr() # all()   dir()   hex()   next()   slice() # any()   divmod()   id()   object()   sorted() # ascii()   enumerate()   input()   oct()   staticmethod() # bin()   eval()   int()   open()   str() # bool()   exec()   isinstance()   ord()   sum() # bytearray()   filter()   issubclass()   pow()   super() # bytes()   float()   iter()   print()   tuple() # callable()   format()   len()   property()   type() # chr()   frozenset()   list()   range()   vars() #

python中列表排序,字典排序,列表中的字典排序

我们两清 提交于 2019-12-05 17:20:14
python中列表排序,字典排序,列表中的字典排序 #-*- encoding=utf-8 -*- # python3代码 import operator 一. 按字典值排序(默认为升序) x = {1:2, 3:4, 4:3, 2:1, 0:0} 1. sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) print sorted_x #[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)] #如果要降序排序,可以指定reverse=True 2. 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表达式 3. sorted_x = sorted(x.iteritems(), key=lambda x : x[1]) print sorted_x #[(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]

Python中 字典排序、列表排序

强颜欢笑 提交于 2019-12-05 02:28:42
一、字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的。因此,为了使统计得到的结果更方便查看需要进行排序。Python中字典的排序分为按“键”排序和按“值”排序。 1、按“值”排序 按“值”排序就是根据字典的值进行排序,可以使用内置的sorted()函数。 sorted(iterable[, cmp[, key[, reverse]]]) (1)iterable:是可迭代类型类型; (2)cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项; (3)key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项; (4)reverse:排序规则. reverse = True 或者 reverse = False,有默认值,默认为升序排列(False)。 返回值: 是一个经过排序的可迭代类型 ,与iterable一样。一般来说,cmp和key可以使用lambda表达式。 如果对字典进行排序,常用的形式如下: sorted(dict.items(), key=lambda e:e[1], reverse=True) , 其中e表示dict.items()中的一个元素,e[1]则表示按 值排序如果把e[1]改成e[0],那么则是按键排序,reverse=False可以省略,默认为升序排列。 说明:字典的items

Python字典的高级用法

旧巷老猫 提交于 2019-12-04 14:19:04
一、 collections 中 defaultdict 的使用 1.1 字典的键映射多个值 将下面的列表转成字典 l = [('a',2),('b',3),('a',1),('b',4),('a',3),('a',1),('b',3)] 一个字典就是一个键对应一个单值的映射,而上面的列表中有相同键。如果你想要一个键映射多个值,那么就需要将这多个值放到另外的序列中,比如 list 或者 set 里面,像下面这样: d = { 'a': [1, 2, 3], 'b': [4, 5] } e = { 'a': {1, 2, 3}, 'b': {4, 5} } 你可以很方便的使用 collections 模块中的 defaultdict 来构造这样的字典。 defaultdict 的一个特征是它会自动初始化每个 key 刚开始对应的值。 In [1]: l = [('a',2),('b',3),('a',1),('b',4),('a',3),('a',1),('b',3)] In [2]: from collections import defaultdict In [3]: d = defaultdict(list) In [4]: for key, value in l: ...: d[key].append(value) ...: In [5]: d Out[5]:

[Python]CCF——数字排序(201503-2)

。_饼干妹妹 提交于 2019-12-03 04:50:24
数字排序 一、问题描述 问题描述    给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。 输入格式 输入的第一行包含一个整数n,表示给定数字的个数。   第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。 输出格式   输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数。按出现次数递减的顺序输出。如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的。 样例输入 12 5 2 3 3 1 3 4 2 5 2 3 5 样例输出 样例输出 3 4 2 3 5 3 1 1 4 1 评测用例规模与约定 1 ≤ n ≤ 1000,给出的数都是不超过1000的非负整数。 # 数字排序 n = int(input()) a = list(map(int,input().split())) s = {} for i in a: s[i] = a.count(i) sort_s = sorted(s.items(),key= lambda x:(-x[1],x[0])) for i in sort_s: print(i[0],i[1]) 分析 利用列表来储存数据,并用字典来记录每个数字出现的次数 对字典进行排序:根据value降序然后再对key升序,即得到想要的顺序了。 来源: https://www.cnblogs.com

[转].Python中sorted函数的用法

匿名 (未验证) 提交于 2019-12-02 22:56:40
原文地址为: [转].Python中sorted函数的用法 我们需要对List、Dict进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序, 在本地进行排序,不返回副本 方法2.用built-in函数sorted进行排序(从2.4开始), 返回副本,原始输入不变 --------------------------------sorted--------------------------------------- >>> help(sorted) Help on built-in function sorted in module __builtin__: sorted(...) ---------------------------------sort---------------------------------------- >>> help(list.sort) Help on method_descriptor: sort(...) ----------------------------------------------------------------------------- iterable:是可迭代类型; cmp:用于比较的函数,比较什么由key决定; key

[Python]CCF――数字排序(201503-2)

匿名 (未验证) 提交于 2019-12-02 22:51:30
问题描述    给定n个整数,请统计出每个整数出现的次数,按出现次数从多到少的顺序输出。 输入格式 输入的第一行包含一个整数n,表示给定数字的个数。   第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。 输出格式   输出多行,每行包含两个整数,分别表示一个给定的整数和它出现的次数。按出现次数递减的顺序输出。如果两个整数出现的次数一样多,则先输出值较小的,然后输出值较大的。 样例输入 12 5 2 3 3 1 3 4 2 5 2 3 5 样例输出 样例输出 3 4 2 3 5 3 1 1 4 1 评测用例规模与约定 1 ≤ n ≤ 1000,给出的数都是不超过1000的非负整数。 # 数字排序 n = int(input()) a = list(map(int,input().split())) s = {} for i in a: s[i] = a.count(i) sort_s = sorted(s.items(),key= lambda x:(-x[1],x[0])) for i in sort_s: print(i[0],i[1]) 利用列表来储存数据,并用字典来记录每个数字出现的次数 对字典进行排序:根据value降序然后再对key升序,即得到想要的顺序了。 来源:博客园 作者: SavvyM 链接:https://www.cnblogs.com

python中涉及到的对象排序

匿名 (未验证) 提交于 2019-12-02 22:51:30
一、列表(list)排序:   1 sort()函数     list对象有sort()内置排序方法。     list.sort(key=None, reverse=False)     key:用来指定list中元素以什么形式去参与排序,该参数可以接受一个函数,以函数的返回值进行排序。     reverse:默认false(升序),true为降序。     sort()方法改变的是对象自身,所以元组在排序时要先转换为列表。   2内置函数sorted():     result = sorted(iterable,key=None,reverse=False)     iterable:为可迭代对象,     key:用来指定可迭代对象中各元素以什么形式参与排序,key可以为一个函数,将会以函数的返回值对元素进行排序,     reverse:默认false(升序),true为降序,     result:sorted()函数不改变对象本身,它返回的是iterable按照key的排序方式排好之后的对象。 二、字典(dict)排序:   1内置函数sorted():     一下排序中sorted()函数默认reverse=False(降序),若要升序则reverse=True     字典没有实例排序方法sort()。     字典排序分为按key排序、按value排序。  

Python3 实例(六)

匿名 (未验证) 提交于 2019-12-02 22:51:08
Python 判断字符串是否存在子字符串 给定一个字符串,然后判断指定的子字符串是否存在于改字符串中。 实例 def check(string, sub_str): if (string.find(sub_str) == -1): print(“不存在!”) else: print(“存在!”) string = “ www.runoob.com ” sub_str =“runoob” check(string, sub_str) 执行以上代码输出结果为: 存在! Python 判断字符串长度 给定一个字符串,然后判断改字符串的长度。 实例 1:使用内置方法 len() str = “runoob” print(len(str)) 执行以上代码输出结果为: 6 实例 2:使用循环计算 def findLen(str): counter = 0 while str[counter:]: counter += 1 returncounter str = “runoob” print(findLen(str)) 执行以上代码输出结果为: 6 Python 使用正则表达式提取字符串中的 URL 给定一个字符串,里面包含 URL 地址,需要我们使用正则表达式来获取字符串的 URL。 实例 import re def Find(string): # findall()

python--sort()和sorted()高级排序

独自空忆成欢 提交于 2019-12-02 10:39:12
python--sort()和sorted()高级排序 转载: https://www.cnblogs.com/dyl01/p/8563550.html 1、list中的sort()方法:  ''' ## 一个list调用sort方法后,对原list进行排序 def sort(self, key=None, reverse=False): # real signature unknown; restored from __doc__ """ L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* """ pass ''' key:是排序的条件,可以是:key=int,key=len, key=lambda.. reverse:表示是否反序,默认从小到大,默认为Flase ''' ##一个list调用sort方法后,对原list进行排序 ## 1、最简单的排序 ## 1、最简单的排序 l = [5,2,3,1,4 ] l .sort() print(l) ##输出:[1, 2, 3, 4, 5] l.sort(reverse=True)#反序 print(l) ##输出:[5, 4, 3, 2, 1] ##2、字符串排序 StrList = ['fb', 'bx', 'csw', 'qb', 'qqa',