collections.deque()
1784 ワード
「python-for-data-analysis」の中国語版を勉強するとき、listに要素を挿入する中でcollectionsに遭遇した.deque、これまで使ったことがありませんが、この記録があります.
dequeは両端appendのデータを頻繁に使用する場合は、このデータ構造を選択するとよいが、ランダムアクセスを実現するには、これを推奨しない場合は、リストを使用する.dequeの利点は、両側のappend、appendleftデータから得ることである.この点listはありません.
参照先:https://blog.csdn.net/liangguohuan/article/details/7088265
以上、本人の学習過程を記録します.
dequeは両端appendのデータを頻繁に使用する場合は、このデータ構造を選択するとよいが、ランダムアクセスを実現するには、これを推奨しない場合は、リストを使用する.dequeの利点は、両側のappend、appendleftデータから得ることである.この点listはありません.
import collections
d = collections.deque([])
d.append('a') # , d=deque('a')
d.appendleft('b') # , d=deque(['b', 'a'])
d.extend(['c','d']) # , d=deque(['b', 'a', 'c', 'd'])
d.extendleft(['e','f']) # , d=deque(['f', 'e', 'b', 'a', 'c', 'd'])
d.pop() # , 'd', d=deque(['f', 'e', 'b', 'a', 'c'])
d.popleft() # , 'f', d=deque(['e', 'b', 'a', 'c'])
d.rotate(-2) # ( ), d=deque(['a', 'c', 'e', 'b'])
d.count('a') # 'a' , 1
d.remove('c') # 'c' , d=deque(['a', 'e', 'b'])
d.reverse() # , d=deque(['b', 'e', 'a'])
f=d.copy()
print(f)#deque(['b', 'e', 'a'])
f.clear()
print(f)#deque([])
# , , 。
e=collections.deque(maxlen=5)
e.extend([1,2,3,4,5])
e.append("a")
print(e)
#deque([2, 3, 4, 5, 'a'], maxlen=5)
e.appendleft("b")
print(e)
#deque(['b', 2, 3, 4, 5], maxlen=5)
e.extendleft(["c","d"])
print(e)
#deque(['d', 'c', 'b', 2, 3], maxlen=5)
参照先:https://blog.csdn.net/liangguohuan/article/details/7088265
以上、本人の学習過程を記録します.