• pygame中self有点想问的问题


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 编程新小白 2024-03-29 20:05 采纳率: 37.5% 浏览 3 首页/ 编程语言 / pygame中self有点想问的问题 python开发语言pygame unsupported operand type(s) for *: 'int' and 'method' 各位,这种情况怎么解决啊 ```python class Block(pygame.sprite.Sprite): def __init__(self, blockType, baseRowIdx, baseColIdx, blockShape, blockRot, blockGroupIdx, width, height, relPos): super().__init__() self.blockType = blockType self.blockShape = blockShape self.blockRot = blockRot self.blockGroupIdx = blockGroupIdx self.baseRowIdx = baseRowIdx self.baseColIdx = baseColIdx self.width = width self.height = height self.relPos = relPos self.loadImage() self.updateImagePos() def updateImagePos(self): self.rect = self.image.get_rect() self.rect.left = self.relPos[0] + self.width * self.colIdx self.rect.top = self.relPos[1] + self.height * self.rowIdx 出问题的源码在这 def getBlockConfigIndex(self): return BLOCK_SHAPE[self.blockShape][self.blockRot][self.blockGroupIdx] def rowIdx(self): return self.baseRowIdx + self.getBlockConfigIndex()[0] def colIdx(self): return self.baseColIdx + self.getBlockConfigIndex()[1] 该咋解决啊 展开全部 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    3条回答 默认 最新

    • 码农阿豪 Java领域优质创作者 2024-03-29 20:05
      关注
      让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
      问题描述: 代码中出现了以下错误:unsupported operand type(s) for *: 'int' and 'method' 问题原因: 这个错误一般是因为代码中使用了错误的运算符或数据类型。在这段代码中,很可能是因为代码中使用了方法而不是返回值,导致了错误的发生。 解决方法: 根据错误描述,可以看到是在将一个整数乘以一个方法的时候出现的错误。所以我们需要查找代码中有哪些地方使用了错误的数据类型或运算符。 在这段代码中,我们可以看到在函数rowIdx和colIdx中,使用了getBlockConfigIndex方法,这个方法应该返回一个元组,在两个函数中需要使用返回元组的第0或第1个元素进行计算,但是代码中却直接用方法进行计算,导致了出错。 我们需要修改这两个函数中的代码,将方法调用改为返回值的调用,即:使用self.getBlockConfigIndex()[0]和self.getBlockConfigIndex()[1]代替self.getBlockConfigIndex(). 这样就能够避免这个错误的发生。 修改后的代码: def rowIdx(self):
      return self.baseRowIdx + self.getBlockConfigIndex()[0]
      

      def colIdx(self): return self.baseColIdx + self.getBlockConfigIndex()[1]

      评论
    • 编程新小白 2024-03-29 20:06
      关注
      
          self.rect.left = self.relPos[0] + self.width * self.colIdx
                                            ~~~~~~~~~~~^~~~~~~~~~~~~
      TypeError: unsupported operand type(s) for *: 'int' and 'method'
      

      补充一下

      评论
    • CSDN-Ada助手 CSDN-AI 官方账号 2024-03-29 22:52
      关注

      【以下回答由 GPT 生成】

      我已经帮你解决了问题,请查看以上解释。
      


      【相关推荐】



      如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
      评论
    编辑
    预览

    报告相同问题?

  • 相关阅读:
    Google-Spyder:Google搜索引擎关键词检索结果抓取
    LeetCode_50_Pow(x,n)
    sqli-labs(Less-3)
    【ARM Coresight 系列文章 3.3 - ARM Coresight SWD 协议详细介绍】
    MySQL、redis、MongoDB、elasticsearch的对比
    C++ 中的虚函数和多态性
    day42
    【SA8295P 源码分析】89 - QNX AIS Camera qcarcam_test 可执行程序 main() 函数 源代码流程分析
    DDOS直接攻击系统资源
    【unity小技巧】Unity 存储存档保存——PlayerPrefs、JsonUtility和MySQL数据库的使用
  • 原文地址:https://ask.csdn.net/questions/8081150