Python中deque定义的时候加入元素以及定义完append元素的不同

最近在LeetCode刷题遇到一个小bug,发现Python常用的队列collections.deque()在加入str类型的数据时,定义和用append添加是不一样的
如下:

  • 在定义的时候添加字符串,会将字符串中的每个元素加入队列

Python中deque定义的时候加入元素以及定义完append元素的不同_第1张图片

  • 而定义完再添加,会将整个字符串作为一个元素添加进队列
    Python中deque定义的时候加入元素以及定义完append元素的不同_第2张图片
    类似的,数组和元组也是这样的
    Python中deque定义的时候加入元素以及定义完append元素的不同_第3张图片
    总结一下,当我们在定义deque()的时候输入一个可迭代对象的时候,队列会自动将这个对象拆开加入队列,而当我们要将完整的对象作为一个元素时,需要在定义之后使用append添加,在刷题中需要根据实际需要来判断使用

你可能感兴趣的:(Python,坑,python)