对python中的size()函数感到困惑。

问题描述 投票:1回答:1

我正在通过代码在python中写一个循环队列。


class CircularQueue:

  # constructor for the class
  # taking input for the size of the Circular queue 
  # from user
  def __init__(self, maxSize):
    self.queue = list()
    # user input value for maxSize
    self.maxSize = maxSize
    self.head = 0
    self.tail = 0

  # add element to the queue
  def enqueue(self, data):
    # if queue is full
    if self.size() == (self.maxSize - 1):
      return("Queue is full!")
    else:
      # add element to the queue
      self.queue.append(data)
      # increment the tail pointer
      self.tail = (self.tail+1) % self.maxSize
      return True

而让我困惑的是 "enqueue "方法中的self.size()。

我看了一下python文档,没有看到任何size()函数,只在numpy中提到了size()。

通常你会想调用len()来计算一个列表的大小,但我知道你不能使用self.len()

任何关于写这样的东西背后的语法和逻辑的澄清解释将是有帮助的!

python size
1个回答
1
投票

你需要定义自己的size()方法,只需返回队列中当前持有的物品数量。

© www.soinside.com 2019 - 2024. All rights reserved.