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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对python中的size()函数感到困惑。相关的知识,希望对你有一定的参考价值。

我正在通过代码在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()

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

答案

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

以上是关于对python中的size()函数感到困惑。的主要内容,如果未能解决你的问题,请参考以下文章

对 def __init__ 中的 __init__ 方法感到困惑

对如何从模块中的其他目录/父目录导入感到困惑(python 3)

对函数调用中的单指针和双指针参数感到困惑

对 Python 列表语法感到困惑

对 python 装饰器感到困惑。何时/如何称呼他们? [复制]

对代码中的类结构感到困惑[关闭]