如何解决TypeError:Python中的“int”对象不是子脚本?

2024-09-30 01:35:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个公平的密码程序,我有两个函数,分别是sameCol和sameRow,他们要做的是看看两个字母是否在同一行或同一列,我写的代码工作了一段时间,但后来坏了,我不知道我做了什么,使它停止正常工作,因为程序将获取需要加密的密钥和消息,并返回加密的消息,但由于某种原因它没有返回返回加密的消息

更新:我尝试了对密钥和消息进行更多的输入(加密),显然有些输入有效,但有些无效

以下是我所做的输入:

输入键:lkj

输入信息至代码:图

结果=ezez

但是如果我像下面这样输入home,那么它会再次显示错误:

回车键:运行

输入要编码的消息:dik

结果:

  Traceback (most recent call last):
  File "/../playfair.py", line 334, in <module>
  encoded = cipher.encode()
  File "/../playfair.py", line 257, in encode
  codeString = self.sameRow(row1, row2, decode = False)
  File "/../playfair.py", line 52, in sameRow
  ltr1Row = index1[0]
  TypeError: 'int' object is not subscriptable

类型错误显示了以下内容: ltr1Row = index1[0]除了类型错误消息之外,我无法理解这有什么问题,因为它工作正常,不,我甚至没有创建这个变量,而是我的prof创建的

下面是ltr1Row = index1[0]部分的更多代码:

 def sameCol(self, index1, index2, decode):
     ltr1Row = index1[0]
     ltr1Col = index1[1]
     ltr2Row = index2[0]
     ltr2Col = index2[1]

这也是sameRow的相同代码,我稍后在我的程序中也调用了这两个代码,下面是其中一个的代码:

    codeString = self.sameCol(col1, col2, decode = False)

如果需要,这里有一个指向整个源代码的链接: https://gist.github.com/roshanlam/e0b9966af1325d5c9469f8cd3a14e402


Tags: 代码inpyself程序消息错误line

热门问题