类型错误:“类型”对象不可下标+迭代为“A”而不是A

修格斯_猎人

我对编程很陌生,我正在尝试用 python3 编写一个程序来定位屏幕上的特定图片。图片是字母表中的字母,我正在尝试编写一个 for 循环来覆盖所有字母,而不是每次都写出来。

我已经设法使它适用于单个字母,但是当我尝试运行它时,它会吐出错误

“类型错误:‘类型’对象不可下标”

不确定这意味着什么,但此外,当尝试在每次迭代中更改文件路径时,它包含撇号,从而弄乱了文件路径。

这个作品-

LETTERSONBOARD = [ ]

Letter_A =(list (pyautogui.locateAllOnScreen(r'C:\Users\Letter_A.png'))

LetA = [ ]

for a in Letter_A:

    LetAC.append(pyautogui.center(a))

for a in LetA:

    LETTERSONBOARD.append(a)

print (LetA)

这不是——

ALPHABET = ['A', 'B', ..., 'Z']

LETTERSONBOARD = []

for xx in ALPHABET:

    Letter_[xx] =(list (pyautogui.locateAllOnScreen(r'C:\Users\Letter_'+str[xx]+'.png',))

    Let[xx] = []

    for aa in Letter_[xx]:

        Let[xx].append(pyautogui.center(aa))
    for bb in Let[xx]:

        LETTERSONBOARD.append(bb)

    print (Let[xx])
休伯特·格热斯科维亚克

该错误TypeError: 'type' object is not subscriptable表明您试图在不支持方括号的对象上使用方括号。通常“订阅”是您访问字典值的方式。

我可以在你使用的代码中看到Letter_[xx],但我看不到你定义Letter_为字典的位置。您可以尝试通过Letter_ = {}在顶部循环之前添加来修复它


其他一些提示:

  • 您正在填满LETTERSONBOARD,但您似乎从未使用过它。
  • 您正在创建大量列表和字典。想想你真正需要什么。一旦整个代码片段运行完毕,您对什么信息感兴趣?
  • 考虑使用正确的变量名来实际告诉您它们包含的内容。这将使您的代码更容易理解。不仅是对别人,也是对自己。

这是用更好的结构和变量名称重写的代码。请注意,我没有对此进行测试。

ALPHABET = list("ABCDEFGHIJKLMNOPQRSTUVWXYZ")
FoundLetter = namedtuple("FoundLetter", ["letter", "center_x", "center_y"])
found_letters = []
for letter in ALPHABET:
  letter_image = "C:\\Users\\Letter_{}.png".format(letter)
  for found_letter in pyautogui.locateAllOnScreen(letter_image):
    center = pyautogui.center(found_letter)
    finding = FoundLetter(letter, center.x, center.y)
    found_letters.append(finding)

现在found_letters包含提供字段的对象列表lettercenter_xcenter_y

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

类型错误:“int”对象不是可下标的行

来自分类Dev

类型错误:“int”对象不可下标?

来自分类Dev

类型错误:“机架”对象不可下标

来自分类Dev

类型错误:“方法”对象不可下标

来自分类Dev

类型错误:“发布”对象不可下标

来自分类Dev

Python TicTacToe 错误:类型错误:“函数”对象不可下标

来自分类Dev

类型错误,iteratig期间“方法”对象不可下标

来自分类Dev

python函数中的类型错误(int对象不可下标)

来自分类Dev

Python - 类型错误:“图形”对象不可下标

来自分类Dev

类型错误:“int”对象不可下标 - Python3

来自分类Dev

类型错误:“产品”对象在 Flask 中不可下标

来自分类Dev

类型对象不可下标-python

来自分类Dev

类型错误函数不可下标

来自分类Dev

将.net字典迭代为对象

来自分类Dev

difflib,类型错误int对象不可迭代

来自分类Dev

Python类型错误:int对象不可迭代

来自分类Dev

类型声明类型对象不是下标列表

来自分类Dev

字典的类型提示给出TypeError:“类型”对象不可下标

来自分类Dev

错误:从数据构建组件“目标”=无失败:类型错误:“浮动”对象不可下标

来自分类Dev

类型错误:“生成器”对象不可下标,csv 文件

来自分类Dev

“类型”对象在函数定义中不可下标

来自分类Dev

使用数组获取“ TypeError:'类型'对象不可下标”

来自分类Dev

API端点返回类型错误:“类型”对象不是可迭代

来自分类Dev

x范围内的错误:TypeError:“类型”对象不可迭代

来自分类Dev

类型错误:“函数”对象不可迭代“Python 3

来自分类Dev

类型错误:'int' 对象不可迭代(python 新手)

来自分类Dev

类型错误:'int' 对象在 Autotyper 中不可迭代

来自分类Dev

类型错误:无法解包不可迭代的 bool 对象

来自分类Dev

类型错误:无法解包不可迭代的 int 对象

Related 相关文章

  1. 1

    类型错误:“int”对象不是可下标的行

  2. 2

    类型错误:“int”对象不可下标?

  3. 3

    类型错误:“机架”对象不可下标

  4. 4

    类型错误:“方法”对象不可下标

  5. 5

    类型错误:“发布”对象不可下标

  6. 6

    Python TicTacToe 错误:类型错误:“函数”对象不可下标

  7. 7

    类型错误,iteratig期间“方法”对象不可下标

  8. 8

    python函数中的类型错误(int对象不可下标)

  9. 9

    Python - 类型错误:“图形”对象不可下标

  10. 10

    类型错误:“int”对象不可下标 - Python3

  11. 11

    类型错误:“产品”对象在 Flask 中不可下标

  12. 12

    类型对象不可下标-python

  13. 13

    类型错误函数不可下标

  14. 14

    将.net字典迭代为对象

  15. 15

    difflib,类型错误int对象不可迭代

  16. 16

    Python类型错误:int对象不可迭代

  17. 17

    类型声明类型对象不是下标列表

  18. 18

    字典的类型提示给出TypeError:“类型”对象不可下标

  19. 19

    错误:从数据构建组件“目标”=无失败:类型错误:“浮动”对象不可下标

  20. 20

    类型错误:“生成器”对象不可下标,csv 文件

  21. 21

    “类型”对象在函数定义中不可下标

  22. 22

    使用数组获取“ TypeError:'类型'对象不可下标”

  23. 23

    API端点返回类型错误:“类型”对象不是可迭代

  24. 24

    x范围内的错误:TypeError:“类型”对象不可迭代

  25. 25

    类型错误:“函数”对象不可迭代“Python 3

  26. 26

    类型错误:'int' 对象不可迭代(python 新手)

  27. 27

    类型错误:'int' 对象在 Autotyper 中不可迭代

  28. 28

    类型错误:无法解包不可迭代的 bool 对象

  29. 29

    类型错误:无法解包不可迭代的 int 对象

热门标签

归档