gpt4 book ai didi

python - __init__() 缺少 1 个必需的位置参数 : 'name'

转载 作者:太空宇宙 更新时间:2023-11-04 07:41:05 25 4
gpt4 key购买 nike

import pygame
from pygame.locals import *

pygame.init()

class levelClass(object):
def __init__(self, name):
self.name = name

这个窗口的初始名称

def makeWindow(self):
screen = pygame.display.set_mode((800,800))
pygame.display.set_caption(self.name)

def drawName(self):
myfont = pygame.font.SysFont("monospace", 25)
label = myfont.render(self.name, 1, (255,0,0))
screen.blit(label, (400,400))

level = levelClass('Level 0')
while True:
level.__init__()
level.drawName()
level.makeWindow()
for event in pygame.event:
if event.type == QUIT:
pygame.exit()
sys.close()
pygame.display.update()

这将创建一个名为 Level 0 的窗口并将其写入窗口,但我看到了这个错误:init() 缺少 1 个必需的位置参数:'name'

最佳答案

您无需调用 __init__(...)明确地,当您创建对象时:

level = levelClass('Level 0')

它隐式调用了__init__(...)使用参数“0 级”,因此您无需在 while 中执行此操作循环。

__init__方法大致代表 Python 中的构造函数,因此它应该只在您创建对象时执行一次。

编辑:总之,你不能调用__init__() ,当您创建对象时:

level = levelClass('Level 0')

它是隐式调用的,因此要更正您的问题,请删除此行:

level.__init__()

关于python - __init__() 缺少 1 个必需的位置参数 : 'name' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20889680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com