一个错误在 print() 行上显示“TypeError:'int' object is not subscriptable”,但我将每个 int 值都更改为 str 值

Posted

技术标签:

【中文标题】一个错误在 print() 行上显示“TypeError:\'int\' object is not subscriptable”,但我将每个 int 值都更改为 str 值【英文标题】:an error says "TypeError: 'int' object is not subscriptable " on a print() line but I changed every int value to a str value一个错误在 print() 行上显示“TypeError:'int' object is not subscriptable”,但我将每个 int 值都更改为 str 值 【发布时间】:2022-01-20 16:04:52 【问题描述】:

我正在尝试为我正在进行的项目打印一些信息:

SnakePosX 是一个 int 值

SnakePosY 是一个 int 值

方向是一个字符串(上、下、右或左)

ApplePos 是一个包含 2 个 int 值的列表

SnakeLength 是一个 int 值。

我已经将每个 int 值都变成了这样的字符串:str(SnakePosX) 即使在我添加 ApplePos[1] 之前它也很好。 这是完整的字符串:

print(f"New pos: str(SnakePosX),str(SnakePosY) // Direction: direction // Apple pos: str(ApplePos[0]),str(ApplePos[1]) // Length: str(SnakeLength)")

如果我需要添加任何内容,请告诉我。

【问题讨论】:

如果显示的行导致错误,则“ApplePos”是一个 int 而不是一个列表。 请在您的问题中包含完整的错误消息。您可以尝试print(type(ApplePos)) 来确认它是int。您无需在 f 字符串插值中转换为 string 【参考方案1】:

ApplePos 是一个 int 而不是一个列表。我把它列了一个清单,现在一切正常。

【讨论】:

以上是关于一个错误在 print() 行上显示“TypeError:'int' object is not subscriptable”,但我将每个 int 值都更改为 str 值的主要内容,如果未能解决你的问题,请参考以下文章

在cli命令行上显示当前数据库,以及查询表的行头信息

使用 Promise 在 Angular 和 Ionic 的页面上显示用户信息时出现以下错误

在命令行上获取用户输入。

报错笔记:linux 命令行中的print输出内容无法重定向到文件中

CodeGym自学笔记06——内存寻址和变量

函数内部 sed 命令中的 bash 语法错误,在命令行上工作正常