尽管对象是一个列表,但出现错误“'int'对象不可下标”

波浪梯子

我有一个列表chromosome,其中包含40个条目。每个条目都是一个二进制数。例如,

chromosome = [1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1]

我需要将每个四个二进制文件转换为整数。例如,整数列表为

intlist = [12, 6 ... ]

从此1100b = 12等等。

为了解决这个问题,我写了下面的Python函数

def makeChromosomeInteger(chromosome, chrom_size):
    intstring = [0] * 10
    i = 0
    for j in range(0, 40, 4):
        intstring[i] = str(chromosome[j]) + str(chromosome[j+1]) + str(chromosome[j+2]) + str(chromosome[j+3])
        intstring[i] = int(intstring[i],2)
        i = i+1

    return intstring

在大多数情况下,这是可行的-该函数确实将每个四个二进制文件都转换为整数。但是,迟早我会收到以下错误消息:

builtins.TypeError: 'int' object is not subscriptable

问题似乎是intstring[i] = int(intstring[i],2)我真的不知道为什么会这样。既不是整数intstring也不chromosome是整数,那么为什么不能访问这些列表?

提前致谢!

PS:如果还有其他巧妙的方法可以转换这些条目,我欢迎您提出建议:)

大河

您的代码应该可以工作,但是这是一个简化:

chromosome = [1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0,
              0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0,
              1, 0, 0, 1, 0, 0, 1, 1]

def makeIntList(chrom):
    intlist = []
    for j in range(0, len(chrom), 4):
        intlist.append(chrom[j]*8 + chrom[j+1]*4 + chrom[j+2]*2 + chrom[j+3])
    return intlist

intlist = makeIntList(chromosome)
print(intlist)

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python错误:int对象不可下标

来自分类Dev

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

来自分类Dev

Python:TypeError:“ int”对象不可下标

来自分类Dev

TypeError:“ int”对象不可下标

来自分类Dev

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

来自分类Dev

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

来自分类Dev

TypeError:“ int”对象在Python3中不可下标

来自分类Dev

我无法解决TypeError:“ int”对象不可下标

来自分类Dev

Python网页抓取:TypeError:'int'对象不可下标

来自分类Dev

psycopg2 - TypeError: 'int' 对象不可下标

来自分类Dev

对象不可下标

来自分类Dev

“ RelatedManager”对象不可下标

来自分类Dev

LabelEncoder对象不可下标

来自分类Dev

NoneType对象不可下标

来自分类Dev

“方法”对象不可下标

来自分类Dev

LeetCode 509:斐波那契数字“ int对象不可下标”

来自分类Dev

TypeError:“ int”对象不可下标,从而将其添加到循环中的元组中

来自分类Dev

使用beautifulsoup提取电子邮件地址(TypeError:'int'对象不可下标)

来自分类Dev

在这种情况下如何修复“'int'对象不可下标”?

来自分类Dev

列表元素(对象)不可下标

来自分类Dev

错误:“功能”对象不可下标

来自分类Dev

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

来自分类Dev

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

来自分类Dev

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

来自分类Dev

我在运行代码后遇到了一个错误:(sumum = sum(var.copy())TypeError:'int'对象不可下标)

来自分类Dev

BeautifulSoup:TypeError:'NoneType'对象不可下标

来自分类常见问题

TypeError:“ zip”对象不可下标

来自分类Dev

Python'TypeError':'Generator'对象不可下标

来自分类Dev

TypeError:“ float”对象不可下标

Related 相关文章

  1. 1

    Python错误:int对象不可下标

  2. 2

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

  3. 3

    Python:TypeError:“ int”对象不可下标

  4. 4

    TypeError:“ int”对象不可下标

  5. 5

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

  6. 6

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

  7. 7

    TypeError:“ int”对象在Python3中不可下标

  8. 8

    我无法解决TypeError:“ int”对象不可下标

  9. 9

    Python网页抓取:TypeError:'int'对象不可下标

  10. 10

    psycopg2 - TypeError: 'int' 对象不可下标

  11. 11

    对象不可下标

  12. 12

    “ RelatedManager”对象不可下标

  13. 13

    LabelEncoder对象不可下标

  14. 14

    NoneType对象不可下标

  15. 15

    “方法”对象不可下标

  16. 16

    LeetCode 509:斐波那契数字“ int对象不可下标”

  17. 17

    TypeError:“ int”对象不可下标,从而将其添加到循环中的元组中

  18. 18

    使用beautifulsoup提取电子邮件地址(TypeError:'int'对象不可下标)

  19. 19

    在这种情况下如何修复“'int'对象不可下标”?

  20. 20

    列表元素(对象)不可下标

  21. 21

    错误:“功能”对象不可下标

  22. 22

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

  23. 23

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

  24. 24

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

  25. 25

    我在运行代码后遇到了一个错误:(sumum = sum(var.copy())TypeError:'int'对象不可下标)

  26. 26

    BeautifulSoup:TypeError:'NoneType'对象不可下标

  27. 27

    TypeError:“ zip”对象不可下标

  28. 28

    Python'TypeError':'Generator'对象不可下标

  29. 29

    TypeError:“ float”对象不可下标

热门标签

归档