类没有输出参数/执行任何操作?(Python)

类没有输出参数/执行任何操作?(Python),python,class,oop,object,Python,Class,Oop,Object,当我尝试实例化该类时,例如: class Fridge: def __init__ (self, food, quantity): self.food=food self.quantity=quantity def UserEntry(self): if input=="milk": print("you got milk!") else: print ("What d

当我尝试实例化该类时,例如:

class Fridge:
    def __init__ (self, food, quantity):
        self.food=food
        self.quantity=quantity
    def UserEntry(self):
        if input=="milk":
            print("you got milk!")
        else:
            print ("What do you want?")
    def DisplayFridge(self):
        print("Fridge_item#1 :" , self.food, "Quantity:" , self.quantity)
我一打开括号就可以实例化这个类,如下所示:

test= Fridge 
我看到了传递给类构造函数/初始化方法的参数。i、 e.食物和数量


考虑到这一点,我有点不知所措,为什么我没有得到任何输出。也不是,我被要求输入信息等。

您没有通过这种方式获得任何信息,您应该尝试:

test = Fridge (
但您的代码中严重缺乏逻辑:

为什么从不使用UserEntry? 你们怎样使用冰箱? 您的userEntry方法永远不会更改self.food变量。
如果要创建实例,请键入

class Fridge:
    def __init__ (self, food, quantity):
        self.food=food
        self.quantity=quantity
    def UserEntry(self):
        var = raw_input("Please enter something: ")
        if var=="milk":
            print("you got milk!")
        else:
            print ("What do you want?")
    def DisplayFridge(self):
        print("Fridge_item#1 :" , self.food, "Quantity:" , self.quantity)
然后,它不会向您显示传递给类构造函数/初始化方法的参数,但会向您显示生成实例必须传递的内容

例如

现在它能装10个牛奶。试一试

test = Fridge("milk", 10)

请写完整的代码。如果您定义了test=fredge'spam',42这样的实例,那么您将如何尝试打印数据。如果input==milk有什么作用呢?提示:您正在将函数对象与字符串进行比较。您认为将在哪里要求输入?您在哪里调用display方法以获得输出?我已经编写了完整的代码:\n那么您还没有调用任何进行输入或输出的代码,因此很难理解为什么您认为应该有一些。我认为输入请求用户逻辑的值并没有真正进入它。这是我第一次使用OOP,我在自学,我更关心的是如何掌握技术,理解OOP的各个部分,术语,如何调用它们等等。你必须一步一步地构造代码。这里有一些没有任何用途的部件。你想让那个用户条目做点什么。为什么不先测试一下您是否可以在一个简单的Python脚本中而不是在一个方法类中获得用户的输入呢?这是一件令人恼火的事情。我以前收到过用户的输入,甚至做过参数检查等!所以我不知道为什么这次没有成功:因为你在比较输入,一个函数,和milk,一个字符串。您想要的是将用户输入的输入字符串与milk字符串进行比较,这给我带来了另一个困惑点。实例和对象之间的区别到底是什么?我认为它是,一个实例=单数,一个对象=复数,但是,它告诉我,这是一个严重的过度简化,很可能也是错误的哦,对象有方法,而实例没有……?对象是一个非常通用的术语,但通常它与实例或多或少是相同的。类是冰箱的定义,您可以使用该定义创建许多实例冰箱。每个实例都有自己的数据实例A的self.food和self.quantity与实例b的self.food和self.quantity是分开的,但是您可以对它们调用方法,它们只调用在类上定义的方法,但每个实例都有自己的self参数。
test = Fridge("milk", 10)
test.UserEntry()
test.DisplayFridge()