如何创建一个python函数来接收类对象作为参数并返回一个方法?

2024-04-25 03:45:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我现在正在上python的一门课程,并在Codegrinder中做了一些让我感到悲伤的练习。我有以下课程:

MAX_LEAD_LENGTH = 10
MAX_NUM_LEADS = 5

class Pencil:

    def __init__(self, num_leads):
        self.mNumLeads = 0
        self.mCurrentLeadLength = MAX_LEAD_LENGTH
        self.addLeads(num_leads)
        return

    def getNumLeads(self):
        return self.mNumLeads

    def getCurrentLeadLength(self):
        return self.mCurrentLeadLength

    def click(self):
        if self.mCurrentLeadLength > 0:
            self.mCurrentLeadLength -= 1
        if self.mCurrentLeadLength == 0 and self.mNumLeads > 0:
            self.mCurrentLeadLength = MAX_LEAD_LENGTH
            self.mNumLeads -= 1
        return self.mCurrentLeadLength > 0

    def addLeads(self, num_additional_leads):
        if num_additional_leads > 0:
            self.mNumLeads += num_additional_leads
            if self.mNumLeads > MAX_NUM_LEADS:
                self.mNumLeads = MAX_NUM_LEADS
        return self.mNumLeads

说明如下:

Exercise: query01

Description

In this exercise, you will create a function that receives a Pencil object as a parameter. It will return the length of the current lead in the pencil.

Function Name

query01

Parameters

  • pencil: A Pencil object

Return Value

  • The length of the current lead in pencil.

Examples

  p = Pencil(3)
  p.click()
  query01(p) -> a number representing the length

如何编写此函数以接收作为函数参数的对象?在


Tags: theselfreturnifdeflengthnummax
1条回答
网友
1楼 · 发布于 2024-04-25 03:45:51

你的任务是返回一个方法。而是返回当前长度。您已经将此函数设为getCurrentLeadLength。在

对象已经作为self参数进入方法中。在

现在,对于给定的接口,您可能需要更改几个名称,但这实际上是伪装的getCurrentLeadLength。在

相关问题 更多 >