无法使用课程列印

时间:2019-10-10 10:58:33

标签: python oop

最简单的代码

class Dog():
    def __init__(self, color, height, breed):
        self.color = color
        self.height = height
        self.breed = breed

        my_dog = Kolin(color='brown', height='1 feet', breed='german shephered')
        print(type(my_dog))
        print(my_dog.color)

以退出代码0结束的过程,但未打印任何内容 注意:它在硒python设置上

2 个答案:

答案 0 :(得分:1)

您必须将程序代码放在课程之外。使用类创建对象时,必须使用类名称(Dog)。我不太确定您为什么在代码中使用Kolin

class Dog():
    def __init__(self, color, height, breed):
        self.color = color
        self.height = height
        self.breed = breed

my_dog = Dog(color='brown', height='1 feet', breed='german shephered')
print(type(my_dog))
print(my_dog.color)

答案 1 :(得分:0)

python语句class定义了一个类。在运行脚本的最后,您将在局部变量中定义一个类:

from pprint import pprint

pprint(locals())

输出:

{'Dog': <class __main__.Dog at 0x033966F8>,
 '__builtins__': <module '__builtin__' (built-in)>,
 '__doc__': None,
 '__file__': 'C:/Users/********/.PyCharm2019.2/config/scratches/scratch_7.py',
 '__name__': '__main__',
 '__package__': None,
 'pprint': <function pprint at 0x03430CF0>}

如果您在脚本中添加另一行来执行,则可以看到您定义的类:

print(Dog)

输出:

__main__.Dog

您可能想实例化此类:

my_dog = Dog(color='brown', height='1 feet', breed='German Shepard')

print(type(my_dog))
print(my_dog.color)

您似乎想给狗起名Kolin。您将需要另一个属性。