7.python3実用的な高度なプログラミングのスキル(B)

1.5。どのように辞書の大きさの値は、ソート項目の辞書

最初の方法:リスト内包

辞書のサイズの値は、辞書エントリがソートされている方法を1.5 

からランダムインポートrandintの

D = {K randint(60、100)のために K  ABCDEFG }
 印刷(D)
最初の方法:リストを使用して、またはzip()関数を解析し、辞書のキーと値が逆 
のList1 = [(V、K)のための K、V d.items()]
 またはzip()関数を使用して、LIST2 =リスト(ZIP (d.values()、d.keys()))
印刷(List1を)
のList1 =ソート(List1を、リバース= TRUE)
 印刷(List1を)

ソートの第二の使用

辞書のサイズの値は、辞書エントリがソートされている方法を1.5 

からランダムインポートrandintの

D = {K randint(60、100)のために K  ABCDEFG }
 印刷(D)
最初の方法:リストを使用して、またはzip()関数を解析し、辞書のキーと値が逆 
のList1 = [(V、K)のための K、V d.items()]
 またはzip()関数を使用して、LIST2 =リスト(ZIP (d.values()、d.keys()))

のList1 =ソート(List1を、リバース= TRUE) 


第二の方法:ソート用いて選別 
P =ソート(d.items()、キー= ラムダ:項目[アイテム。1]、リバース= 真)
 を印刷(P)      #1 [( 'A'、97)、( 'B'、93)、( 'D'、93)、( 'E'、92)、( 'F'、76)、( 'C'、 66)、( 'G'、61])である

#の分数が追加ランク 
D = {K:(I、V)用の I、(K、V)列挙(P ,. 1 )}
 印刷(D)    {[ G '(1、97) 、' D ':(2、92)、' F ':(3、91)、' C ':(4、79)、' A ':(5、78)、' E '(6、67) 、' B「:(7、64)}

1.6。どのように統計的な周波数シーケンスの要素の

1.6どのように統計的シーケンスの要素の周波数
からランダムインポートrandint
 からコレクションをインポートカウンタ

データ = randint(1,5)のための _ 範囲(1,20 )]
 プリント(データ)    #1 [5,2 ,. 1,2 、5、3、1、1、1、4、2、5、3、2、3、5、1、2、5] 

は、最も高い周波数で計算された3の数であり、 
C = カウンタ(データ)
 を印刷(C .most_common(3))     #1 [(1 ,. 5)、(3 ,. 4)、(2 ,. 4)]

1.7。すぐに見つける方法の詳細の辞書の公開鍵

どのように公開鍵以上の辞書を検索する1.7 

からランダムインポートrandintを、サンプル
 から functoolsはインポート減らす

D1 randint(1、4):= {K 用の K におけるサンプル(' ABCDEFGH '、randint(3,6 ))を} 
D2 = {K:randint(1,4)のための K におけるサンプル(' ABCDEFGH '、randint(3,6 ))} 
D3 = {K:randint(1,4)のための K におけるサンプル(' ABCDEFGH '、randint (3,6 ))} 

辞書のキーのセットを取得するために1辞書キー()メソッド、マップ機能を使用して2を、キーのセットを得るために、各辞書3.すべての辞書キーのセットの交差点とる、低減

DL = [D1、D2をD3]
3の同一の辞書のキーを見つけ 
=削減(結果ラムダ A、B:A&B、地図(dict.keys、DL))
 印刷(結果)

 秩序を保つために辞書を作成する方法1.8。

1.8。秩序を維持する方法辞書

からコレクションをインポートOrderedDict
 から itertoolsがインポートislice 

D = OrderedDict()
D [ ' E ' ] = 5 
D [ ' D ' ] = 4 
D [ ' C ' ] 3 = 
D [ ' Bを' ] = 2 
D [ ' A ' ] = 1枚のプリント(D)     #1 OrderedDict([(' E '。5)、(' D '4)、(' C '3)、(' B」、2 )、( 'A'、1)]) #1 OrderedDict辞書、反復動作、それは要素の順序を保存するが挿入されているデフ





query_by_order(D、A、B = なし):
     IF Bはありませんなし:
        B = A + 1つの
     戻りリスト(islice(D、A、B)) 

第五のキー 
RES1 = query_by_order(D ,. 4 プリント(RES1)      [ 'A'] 

第二及び第三のキーの 
RES2 = query_by_order(D、L、3 プリント(RES2)     [ 'D'、 'C']

 

おすすめ

転載: www.cnblogs.com/derek1184405959/p/11355232.html