1. 初始方法名
__init()__
要点: 两个下划线 + init() + 两个下划线
解释: 类的保留方法,默认写法
错误
1. 下划线数量
2. init写成int
报错
xxx() takes no keyword arguments #函数不需要任何参数
xxx() don't have attribute 'xxx' #函数没有被调用的属性
原因
init函数未被申明,而是额外声明了别的自定义函数,因此无法通过访问默认变量的方法访问自定义函数中的值
2. 类中的方法声明
def xxx(self)
要点: 设置参数self
解释:在类中定义函数需要传入参数self,这是一个位置参数, 用于实例化类时,将传入的实例对象与函数绑定
错误: 忘记传入参数self
报错
xxx() takes 0 positional arguments but 1 was given
#函数需要0个位置参数,但传入了1个
原因: 类通过实例化被调用时,程序默认传入了实例对象,但是类中定义的函数没有设置为获取参数,因此报错
未解决问题
描述:循环中只写了绘制屏幕的语句,执行后生成窗体无响应
代码:
import sys
import pygame
def run():
screen = pygame.display.set_mode((1200,400))
bg = (43,34,230)
screen.fill(bg)
while True:
pygame.display.flip()
run()