我创建了deque h = collections.deque()
并在其中添加了数字1-10,并将函数print(h)
包含在用户定义的函数Numbers_deque()
中。具体来说,我这样做了:
import collections
def Numbers_deque():
h = collections.deque()
j = (1,2,3,4,5,6,7,8,9,10)
h.append(j)
print(h)
Numbers_deque()
我想知道的是,我如何打印出一次增加一个deque项目,每次它还打印出之前的所有项目?例如,每次调用Numbers_deque
时,我第一次要它打印deque([1])
,然后第二次打印deque([1,2])
,然后第三次打印deque([1,2,3])
class Region(Base):
__tablename__ = 'region'
id = db.Column(db.Integer, primary_key=True)
class District(Base):
__tablename__ = 'district'
id = db.Column(db.Integer, primary_key=True)
region_id = db.Column(db.Integer, ForeignKey(Region.id))
region = relationship(Region)
等等。我该怎么做?
答案 0 :(得分:1)
您可以将双端队列作为默认参数启动。然后它只执行一次,并在每次调用函数时重复使用。
import collections
def Numbers_deque(h = collections.deque()):
if len(h) >= 10:
h.clear()
h.append(len(h)+1)
print(h)
Numbers_deque()
但是如果要返回deque并在函数外部使用它,请小心。然后你应该复制一份