python dict sort date

#!/usr/bin/env?python
#?coding:?utf-8
#
#?author:?Tim?Wang
#?date:?Nov.,?2014
#?filename:?/qa3.py

"""以下代碼僅提供擴展參考的方法,在2.7版本下可運行。"""

import?re


def?parser(dataserial,?patt,?keyname,?*evalattrs):
????"""對給定的dataserial數據序列,用patt進行正則解析
????????對指定的evalattrs進行值轉換,
????????以其中的keyname為字典鍵值,
????"""
????collector?=?{}
????for?matched?in?filter(None,?map(patt.match,?dataserial)):
????????data?=?matched.groupdict()
????????for?attr?in?evalattrs:
????????????data[attr]?=?eval(data[attr])
????????collector[data.get(keyname)]?=?data
????return?collector


def?iterdictsort(dictdatas,?sortattr):
????for?v?in?sorted(dictdatas.values(),
????????????????????key=lambda?v:?v.get(sortattr)):
????????yield?v


context?=?u"""
廣州????????2014-11-22????蘋果????9????96
深圳????????2014-11-23????香蕉????10????75
杭州????????2014-11-24????番茄????5????43
北京????????2014-11-25????橘子????8????24
"""
patt?=?re.compile(r"""^
??????????????????(?P<locale>\S+)
??????????????????\s+
??????????????????(?P<date>\S+)
??????????????????\s+
??????????????????(?P<product>\S+)
??????????????????\s+
??????????????????(?P<qty>\d+)
??????????????????\s+
??????????????????(?P<amount>\d+)
??????????????????\s*$""",?re.I|re.U|re.X)
fmt?=?u"{locale}?{date}?{qty:4}?{amount:8}"
datas?=?parser(context.splitlines(),?patt,?"locale",?"qty",?"amount")
print?"="*32
print?"\n".join(fmt.format(**data)
????????????????for?data?in?iterdictsort(datas,?qty))
print?"="*32
print?"\n".join(fmt.format(**data)
????????????????for?data?in?iterdictsort(datas,?amount))
Tong gallery wuhan zukz2玩王者哪個版本好 steamsupport是什么 小學后院的鍋爐工最新 鋅和硫酸銅反應的現象 澳大利亞 洪都拉斯賽果 卷發棒使用方法圖解 蔡司21mm f2.8 樣張 高鐵15元盒飯味道如何 相伴到黎明 葉沙 寄東魯二稚子朗誦視頻 李貞賢--扇子舞 回收率和產率的區別 韓國電影殺人優先權 血源詛咒舊亞楠地圖 浩辰cad電氣 2017注冊 持球突破跳步上籃教學 磁化曲線與磁滯回線圖 墨跡天氣對第二筆投資 因式分解公式法教案 alpaha go是機器人嗎 jdbc driver not found 助勃延時噴劑有效嗎 緒的意思 類似于漫畫搖的歌曲 python 身份證算法 QQ閨蜜頭兩張霸氣時尚 單面絨和雙面絨區別 鳴人與綱手荒島42p 抗彎剛度計算

Copyright 知加友 Some Rights Reserved

如反饋或投訴等情況聯系:une35498#163.com

2020年体育大乐透开奖结果