Python-Collections模块之deque
deque: (double-ended queue,双端队列),是一种具有队列和栈性质的数据结构,双端队列中的元素可以从两端弹出,相比list增加[]运算符重载
#1、append(x) ,将x添加到deque的右侧: from collections import deque d = deque("abc") print(d) #执行结果: deque(['a', 'b', 'c']) for ele in d: print(ele.upper()) d.append('g') print(d) #执行结果: deque(['a', 'b', 'c', 'g']) #2、appendleft(x): 将x添加到deque的左侧 d = deque('abc') d.appendleft('v') print(d) #执行结果:deque(['v', 'a', 'b', 'c']) #3、clear(): 将deque中的元素全部删除,最后长度为0 d = deque('abc') d.clear() print(d) #执行结果: deque([]) #4、count(x): 返回deque中元素等于x的个数 d = deque('aaabccc') print(d.count('a')) #5、extend(iterable): 将可迭代变量iterable中的元素添加至deque的右侧 d = deque('abc') d.extend('gfh') print(d) #执行结果: deque(['a', 'b', 'c', 'g', 'f', 'h']) #6、extendleft(iterable): 将可迭代变量iterable中的元素添加至deque的左侧,往左侧添加序列的顺序与可迭代变量iterable中的元素相反 d =deque('abc') d.extendleft('yzw') print(d) #执行结果: deque(['w', 'z', 'y', 'a', 'b', 'c']) #7、pop(): 移除和返回deque中最右侧的元素,如果没有元素,将会报出IndexError; d = deque('abc') d.pop() print(d) #执行结果: deque(['a', 'b']) #8、popleft(): 移除和返回deque中最左侧的元素,如果没有元素,将会报出IndexError; d = deque('abc') d.popleft() print(d) #执行结果: deque(['b', 'c']) #9、remove(value): 移除每一次出现的value,如果没有找到,将会报出valueError; d =deque('abc') #d.remove('d') #print(d) #执行结果: ValueError: deque.remove(x): x not in deque #10、reverse(): 反转deque中的元素,并返回None d = deque('abc') print(list(reversed(d))) #执行结果: ['c', 'b', 'a'] #11、rotate(n): 从右侧反转n步,如果n为负数,则从左侧开始反转 d =deque('abc') d.rotate(2) print(d) #执行结果: deque(['b', 'c', 'a']) d.rotate(-2) print(d) #执行结果:deque(['a', 'b', 'c'])
    三十六般武艺,七十二般变化,修练出个人品牌并发出光芒
 
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号