请看下代码,百度了好久都没有找到解决办法。TypeError: 'pygame.Surface' object is not callable,并且运行出来是黑屏的,没有任何响应

import sys
import pygame
import threading
import random

#创建游戏类
class Game:

def __init__(self):
    
    #pygame初始化
    pygame.init()
    
    #设置显示模式
    self.screen = pygame.display.set_mode((800,600))
    
    #设置窗口标题
    pygame.display.set_caption('python game')
    
    #图片列表
    self.image = []
    
    #图片大小列表
    self.imagerect = []
    
    #载入图片
    self.vs = pygame.image.load('vs.png')
    self.o = pygame.image.load('o.png')
    self.p = pygame.image.load('p.png')
    self.u = pygame.image.load('u.png')
    self.start = pygame.image.load('start.png')
    self.exit = pygame.image.load('exit.png')
    self.title = pygame.image.load('title.png')

    for i in range(3):
        png = pygame.image.load(str(i)+'.png')
        self.image.append(png)
        
    #处理图片绘制区域
    for i in range(3):
        image = self.image[i]
        rect = image.get_rect()
        rect.left = 200*(i+1)+rect.left
        rect.top = 400
        self.imagerect.append(rect)
        
        
        
#绘制游戏初始界面
def Start(self):
    
    #绘制游戏名称
    self.screen.blit(self.title,(200,100,400,140))
    
    #绘制开始按钮
    self.screen.blit(self.start,(350,300,100,50))
    
    #绘制退出按钮
    self.screen.blit(self.exit,(350,400,100,50))

    #刷新屏幕
    pygame.display.flip()

    
    start = 1
    
    #进入消息循环
    while start:
        
        #处理消息
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
            elif event.type == pygame.MOUSEBUTTONDOWN:      #处理鼠标单击消息
                if self.isStart() ==0 :
                    start = 0
                elif self.isStart() == 1:
                    sys.exit()
                else:
                    pass
            else:
                pass
    self.run()      #开始游戏
    
    
def run(self):
    self.screen.fill((0,0,0))
    
    for i in range(3):
        self.screen.blit(self.image[i],self.imagerect[i])
    pygame.display.flip()
    while True:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
            elif event.type == pygame.MOUSEBUTTONDOWN:      #处理鼠标单击消息
                self.OnMouseButDown()
            else:
                pass
    
    
def isStart(self):
    pos=pygame.mouse.get_pos()
    if pos[0]>350 and pos[0]<450:
        if pos[1]>300 and pos[1]<350:
            return 0
        elif pos[1]>400 and pos[1]<450:
            return 1
        else:
            return 2
    else:
        return 2
    
def OnMouseButDown(self):
    self.screen.blit(self.vs,(300,150,140,140))
    pos = pygame.mouse.get_pos()
    if pos[1]>400 and pos[1]<540:
        if pos[0]>200 and pos[0]<340:
            self.screen.blit(self.image[0],(150,150,140,140))
            self.isWin(0)
        elif pos[0]>400 and pos[0]<540:
            self.screen.blit(self.image[1],(150,150,140,140))
            self.isWin(1)
        elif pos[0]>600 and pos[0]<740:
            self.screen.blit(self.image[2],(150,150,140,140))
            self.isWin(2)
        else:
            pass


def isWin(self,value):
    num = random.randint(0, 2)
    self.screen.blit(self.image[num],(450,150,590,240))
    pygame.display.flip()
    
    if num == value:
        self.screen.blit(self.o,(220,10,140,70))
        pygame.display.flip()
    
    elif num<value:
        if num==0:
            if value ==2:
                self.screen.blit(self.u,(220,10,140,70))
            else:
                self.screen.blit(self.p,(220,10,140,70))
                pygame.display.flip()
        else:
            self.screen.blit(self.u,(220,10,140,70))
            pygame.display.flip()
    
    else:
        if num==2:
            if value ==1:
                self.screen.blit(self.u,(220,10,140,70))
            else:
                self.screen.blit(self.p,(220,10,140,70))
                pygame.display.flip()
        else:
            self.screen.blit(self.u,(220,10,140,70))
            pygame.display.flip()

game = Game()
game.start()

TypeError: 'pygame.Surface' object is not callable,调用对象出错,start是开始图片不是开始函数
你将程序最后一行game.start()
修改为

game.Start()

即可
有帮助请采纳一下,有问题可以继续交流