Pythonの - >(10)研究ノート

コレクションモジュール

コレクションPythonは多くの有用なコレクションを提供し、内蔵モジュールの集合体です。

>>> import collections

カウンタークラス

Counterこれは、オブジェクト数ハッシュ可能に助けにdictのサブクラスこれは、ストレージオブジェクトはハッシュ可能辞書キー、その辞書、カウントがゼロと負を含む任意の整数とすることができる記憶カウント値である要素の順序付けられていないコレクションです。
カウンターヘルプ
カウンターの例は:PythonのLICENSEファイル内の特定の単語が表示されヒット。

>>> from collections import Counter
>>> import re
>>> path = '/usr/lib/python3.5/LICENSE.txt'
>>> words = re.findall('\w+', open(path).read().lower())
>>> Counter(words).most_common(10)
[('the', 80), ('or', 78), ('1', 66), ('of', 61), ('to', 50), ('and', 48), ('python', 46), ('in', 38), ('license', 37), ('any', 37)]

オブジェクトカウンタelements()同じ要素下記繰り返しの数をカウントする、配列を返すメソッドは、要素の順序が乱れています。

>>> c = Counter(a=4, b=2, c=0, d=-2)
>>> list(c.elements())
['b','b','a', 'a', 'a', 'a']

most_common()最も一般的な要素とその回数、少なくとも最も一般的なの順序を返します。

>>> Counter('abracadabra').most_common(3)
[('a', 5), ('r', 2), ('b', 2)]

defaultdictクラス

defaultdictこれは、内蔵されているdictメソッドをオーバーライドし、書き込み可能なインスタンス変数を追加したクラスのサブクラス。同じ辞書の残りの機能。
同じ機能を使用するdefaultdictよりもdict.setdefault速くする方法。

>>> from collections import defaultdict
>>> s = [('yellow', 1), ('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
>>> d = defaultdict(list)
>>> for k, v in s:
...     d[k].append(v)
...
>>> d.items()
dict_items([('blue', [2, 4]), ('red', [1]), ('yellow', [1, 3])])

でもdefaultdictが存在しないキーのオブジェクトことを確認することができ、それが自動的に空のリストを作成します。

namedtupleクラス

名前付きタプルタプルは、それぞれの場所に意味を与え、コードをより読みやすく、自己文書化自然に役立ちます。

各タプルのための保存場所情報を表示する名前のタプルを作成します。

>>> from collections import namedtuple
>>> Point = namedtuple('Point', ['x', 'y'])  # 定义命名元组
>>> p = Point(10, y=20)  # 创建一个对象
>>> p
Point(x=10, y=20)
>>> p.x + p.y
30
>>> p[0] + p[1]  # 像普通元组那样访问元素
30
>>> x, y = p     # 元组拆封
>>> x
10
>>> y
20

出典:実験棟

公開された33元の記事 ウォンの賞賛1 ビュー1241

おすすめ

転載: blog.csdn.net/weixin_44783002/article/details/104638770