为了账号安全,请及时绑定邮箱和手机立即绑定

TypesError:+ 不支持的操作数类型:'int' 和 'tuple'

TypesError:+ 不支持的操作数类型:'int' 和 'tuple'

ibeautiful 2023-02-22 16:32:28
我正在尝试制作刽子手,但出现以下错误:我试图让它返回 pos_ 的 x 坐标。包含错误的代码片段:        def DrawLetter(IndexNumber):        if letterlist[x-1] == "g":            pos_ = (AdjustMe + (27 * int(IndexNumber), 226))        else:            pos_ = (AdjustMe + (27 * int(IndexNumber), 230))        screen.blit(letter, pos_)        screen.blit(BottomDashes, (0, 256))        lettersguessed.append(letterlist[x-1])        print(x)        if LTGL == lettersguessed:            print("you won")            running = False    while x < len(letterlist):        duplicates = [item for item, count in collections.Counter(word).items() if count > 1]        if letterlist.count(letterlist[x-1]) > 1:            for y in duplicates:                DuplicatesList = [i for i, e in enumerate(word) if e == y]            IndexNumber = list(DuplicatesList)            print(IndexNumber)            DrawLetter(IndexNumber)        else:            IndexNumber = LTGL.index(letterlist[x - 1])            DrawLetter(IndexNumber)        x += 1如果有人可以指出一些不遵循 PEP8 的代码,则会加分。另外,请注意这还远未完成,因此如果有一些代码作为注释,我稍后会删除它们。
查看完整描述

1 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

这里:


pos_ = (AdjustMe + (27 * int(IndexNumber), 226))

是相同的:


pos_ = (int + (int * int, int)) ->

       (int + tuple)

python 应该如何将该整数添加到该元组?


这是更正的方法:


if letterlist[x-1] == "g":

    pos_ = (27 * int(IndexNumber) + AdjustMe, 226 + AdjustMe)

else:

    pos_ = (27 * int(IndexNumber) + AdjustMe, 230 + AdjustMe)


查看完整回答
反对 回复 2023-02-22
  • 1 回答
  • 0 关注
  • 104 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号