6688鸭鸭 发表于 2020-4-8 17:29:58

小白有疑问

class Student(object):

    # __init__是一个特殊方法用于在创建对象时进行初始化操作
    # 通过这个方法我们可以为学生对象绑定name和age两个属性
    def __init__(self, name, age):
      self.name = name
      self.age = age

    def study(self, course_name):
      print('%s正在学习%s.' % (self.name, course_name))

    # PEP 8要求标识符的名字用全小写多个单词用下划线连接
    # 但是部分程序员和公司更倾向于使用驼峰命名法(驼峰标识)
    def watch_movie(self):
      if self.age < 18:
            print('%s只能观看《熊出没》.' % self.name)
      else:
            print('%s正在观看岛国爱情大电影.' % self.name)

为什么上面这段代码运行不出来呢?

zltzlt 发表于 2020-4-8 17:31:17

因为你只是定义了这个类,没有实例化它。

6688鸭鸭 发表于 2020-4-8 17:39:01

好的谢谢

会计的会怎么念 发表于 2020-4-8 17:39:51

- 因为你没有调用。加个
if __name__ == '__main__':
    pass
   
- 加上第一句就可以在主代码下调用执行,而不会在其他文件内导入这个包时运行
- pass处调用你的代码,实例化然后调用方法
页: [1]
查看完整版本: 小白有疑问