调用类方法时发生NameError

2024-09-28 05:28:58 发布

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

试图理解python3.7中的类和方法。我继续运行下面的代码,但是不断得到这个NameError,它与我在Stats类的initialize方法中建立的points变量相关联。我相信这个错误是由于在识别局部/全局变量时遇到了一些问题,但我无法确定。有人有什么想法吗?你知道吗

class Stats:
    def __init__(self, points, rebounds, assists, steals):
        self.points = points
        self.rebounds = rebounds
        self.assists = assists
        self.steals = steals

    def tripDub(self):
        if points >= 10 and rebounds >= 10 and assists >= 10 and steals >= 10:
            return "Yes!"
        else:
            return "Nope!"

s = Stats(30, 20, 9, 5)
print("Did he earn a Triple Double? Result:", s.tripDub())

Tags: and方法代码selfreturndefstats错误
2条回答

您需要在tripDub函数中使用self引用pointsreboundsassistssteals。你知道吗

例如:self.points

在引用实例变量之前需要self.

class Stats:
    def __init__(self, points, rebounds, assists, steals):
        self.points = points
        self.rebounds = rebounds
        self.assists = assists
        self.steals = steals

    def tripDub(self):
        if self.points >= 10 and self.rebounds >= 10 and self.assists >= 10 and self.steals >= 10:
            return "Yes!"
        else:
            return "Nope!"


s = Stats(30, 20, 9, 5)
print("Did he earn a Triple Double? Result:", s.tripDub())

相关问题 更多 >

    热门问题