Ordenar valores de diccionario en Python
#?Codificación:? utf-8
#
#?Autor:? Tim. Wang (apellido)
#?Fecha:? ¿Noviembre? 2014
#?Nombre del archivo:? Baidu/qa3.py
" " "El siguiente código solo proporciona métodos para ampliar referencias y se puede ejecutar en la versión 2.7."""
¿Importar? ¿Acerca de
def? Parser(dataSequence, patt? keyname, ?*evalattrs):
" ""Utilice patt para analizar periódicamente la secuencia de datos de dataSequence dada.
Convierta el valor de los evalattrs especificados,
Usar nombre clave como valor clave del diccionario,
"""
¿Coleccionista? =?{}
¿Para qué? ¿fósforo? ¿existir? filtro(ninguno, mapa(patt.match, ? serie de datos)):
datos? =?matched.groupdict()
¿Para qué? atributo? ¿existir? evalattrs:
¿Datos [atributo]? =?eval(datos[propiedad])
Coleccionista[datos.get(nombre clave)]? =?Datos
¿Regresión? Coleccionista
def? iterdictsort(dictdatas,?sortattr):
¿Para qué? v? ¿existir? ordenado(dictdatas.values(),
key=lambda?v:?v.get(sortattr)):
rendimiento? v
¿Contexto? =?u " " "
Guangzhou 2014-11-22 Manzana 996
Shenzhen 2014-11-23 Plátano 1075
Hangzhou 2014-11-24 Tomate 543
Beijing 2014-11-25 Naranja 824
"""
Pat? =?re.compile(r"""^
(?P & ltLocale& gt\S+)
\s+
(?P & ltDate & gt \S+)
\s+
(?P & ltProducto& gt\S+)
\s+
(?P & ltcantidad& gt \d+)
\s+
(?P & ltamount& gt\d+)
\s*$ " ",?about.i|re.U |re.x)
fmt?=?u"{locale}? {fecha}? {Cantidad: 4}? {amount:8} "
datos?=?parser(context.splitlines(),?pat?"locale",?"amount",?"amount")
Imprimir ? "="*32
Imprimir? \n. join(fmt . format(* *data)
¿Para qué? iterdictsort(datas, cantidad '))
Imprimir? \n. join(fmt . format(* *data)
¿Para qué? ?iterdictsort(datas, cantidad'))