TypeError:“pygame.Surface”对象不可调用并且 pygame 窗口崩溃

2023-12-13

我对 Pygame 和 Python 很陌生,我刚刚编写了第一个代码,但不知何故我不断收到此错误:

TypeError: 'pygame.Surface' object is not callable

我不知道代码是否有问题,或者只是因为Pygame/Python安装不正确。

bif="bg.jpg"
mif="ball.png"

import pygame, sys
from pygame.locals import *

pygame.init()
screen=pygame.display.set_mode((640,360),0,32)

background=pygame.image.load(bif).convert()
mouse_c=pygame.image.load(mif).convert_alpha()

while True:
   for event in pygame.event.get():
     if event.type == QUIT:
        pygame.quit()
        sys.exit()

screen.blit(background, (0,0))

x,y = pygame.mouse.get_pos()
x -= mouse_c.get_width()/2
y -= mouse_c.get_height()/2

screen.blit(mouse_c(x,y))

pygame.display.update()

运行此代码后,pygame 窗口崩溃。


你少了一个逗号:

screen.blit(mouse_c(x,y))

应该

screen.blit(mouse_c, (x,y))
                 # ^

在第一个版本中,mouse_c(x, y)被解释为试图call mouse_c(这是一个pygame.Surface因此不可调用)带参数x and y,当它们实际上是单独的参数时(source and dest) to screen.blit.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

TypeError:“pygame.Surface”对象不可调用并且 pygame 窗口崩溃 的相关文章

随机推荐

  • AngularJS nvD3 错误 - 哪些版本兼容?

    我和这位用户有同样的问题 Angular nvD3 错误 指令 nvd3 的隔离范围定义无效 那里的答案说 使用最新的 AngularJS 超越 Angular 1 1 4 但我正在使用最新的 AngularJS AngularJS v1
  • 未正确显示

    我在显示时遇到问题 nbsp 在我的网页中 在 PHP 中使用 utf8 decode 后 它显示为 我一直在使用 我刚刚注意到 所有其他特殊字符 如
  • Javascript 对象键应该被引用吗?

    我知道有一些问题可能会提到这一点 但我没有找到任何与 javascript 严格相关的内容 例如这个 JSON Spec 密钥是否必须用引号引起来 但我的问题是 我们写的时候应该使用引号吗 JavaScript Object 我认为不加引号
  • 使用 Ember.js 过滤子记录(hasMany 关联)

    有没有可能过滤hasMany来自模型记录的记录 我想要获取按客户分组的活动项目 客户模型 Docket Customer DS Model extend name DS attr string initial DS attr string
  • Visual Studio Team Services Rest API 时增强的安全错误

    我目前正在尝试使用 Visual Studio Team Services 原 Visual Studio Online 公开的 Rest API 来获取工作项信息 我似乎能够连接 但是当我查看查询的响应时 它是一个带有增强安全错误消息的
  • MVC - 更改链接中 URL 的一部分

    我有一个支持本地化的网站 我希望能够在英语和法语之间切换 假设用户当前位于以下 URL http www example com en Home 我想重定向到 http www example com fr Home 如果用户单击 法语 链
  • 调用 [NSBundle mainBundle] 时 XCTest 失败

    我有一些代码可以调用 NSBundle mainBundle 在某些时候 主要是为了读取 设置首选项 当我对该方法进行单元测试时 测试失败 因为测试的 mainBundle 不包含该文件 This is 一个已知问题 苹果不会像他们认为的那
  • ssl_error_rx_record_too_long 和 Apache SSL [关闭]

    Closed 这个问题是无关 目前不接受答案 我有一位客户尝试访问我的网站之一 但他们不断收到此错误 gt ssl error rx record too long 他们在所有浏览器 所有平台上都会收到此错误 我根本无法重现这个问题 我和我
  • 来自我的本机 iPhone 应用程序的 linkedin 连接

    大家好 我是 iphone 开发新手 我想从我的本机 iphone 应用程序连接到 linkedin 我目前不知道如何连接到它 请指导我该怎么做 From http www zhangkf com 2010 06 linkedin deve
  • onclick() 函数可以不与调用它的元素同名吗? [复制]

    这个问题在这里已经有答案了 所以我有这个按钮元素 无论我做什么 它都会拒绝触发它的 onclick 函数 这让我发疯了一段时间
  • htaccess 重写 url,如 Stack Overflow

    Stack Overflow 生成重写 URL 所以我需要知道如何像 Stack Overflow 那样做到这一点 http stackoverflow com questions 9168364 how to rewrite seo fr
  • 在 foreach 循环中使用字符串变量检索图像资源

    我有一个字符串数组 abc 我把它放在 foreach 循环中 我想使用 foreach 循环中的值从资源中检索图像并将其放入图片框中 代码如下 char stringArr inputted ToCharArray foreach cha
  • 跨多个用户共享 BigQuery 的缓存

    据我了解 BigQuery 的caching机制是基于每个用户的 但我们希望能够在项目 数据集 表级别上共享缓存 例如 约翰和玛丽都在同一个 Google 项目上工作XYZ 他们喜欢使用 BigQuery 并且都查询表Bar在数据集中Foo
  • 我的rec函数是尾递归的吗?

    这个函数是尾递归的吗 let rec rec algo1 step J if step dSs then J else let a Array init Array2D length1 M fun i gt minby1J i M J le
  • 根据所需长度分割字符串

    有没有一种简单的方法可以根据所需的长度分割字符串 例如 我有一个字符串
  • 如何在主容器中注册类型,但在子容器中解析?

    我有一个统一容器并使用RegisterType使用以下方法注册以下存储库和实现者ContainerControlledLifetimeManager public interface IPersonRepository Person Get
  • 将 C++ string/wchar_t* 转换为 C# 字符串?

    问题 我需要从 C 可执行文件调用 C dll 我使用 COM 它对于 int long 和 bool 工作得很好 但我连一根绳子都拉不起来 IDL 文件说它是一个 BSTR 但我无法正确传递它 也无法检索它 我尝试像使用 VB6 一样使用
  • C++ 中的映射可以接受任何类型的值

    我想在 c 中创建一个可以接受任何类型值的映射 我在 java 中使用 Object 类做了同样的事情 映射但不知道如何在 C 中执行此操作 请帮忙 正如前面的答案正确建议的那样 您不能在 C 中开箱即用 我假设通过 可以接受任何类型的值
  • 由于环境错误而无法安装软件包:[Errno 13]

    在我的 MacOS Mojave 终端中 我想使用 pip 安装 python 包 最后它说 You are using pip version 10 0 1 however version 18 1 is available You sh
  • TypeError:“pygame.Surface”对象不可调用并且 pygame 窗口崩溃

    我对 Pygame 和 Python 很陌生 我刚刚编写了第一个代码 但不知何故我不断收到此错误 TypeError pygame Surface object is not callable 我不知道代码是否有问题 或者只是因为Pygam