python int对象不可订阅

时间:2014-12-10 16:20:44

标签: python list dictionary

我已获得以下代码:

import random
random.seed(57)
c = {}
for key in l:

这是使用字典-l-的值中的两个数字作为随机数

的范围
pos = random in range(l[1[0]], l[1[1]]) 
    c["l[0]"] = pos
return c

当我在CMD中运行doctest时,它告诉我int对象不可订阅 我正在运行以下doctest:

>>> ranPos({'Dennis': [90.0, 0.0]})
{'Dennis': 90.0}`

1 个答案:

答案 0 :(得分:0)

所以,让我们计算错误。

1[0]表示'取第一个索引1'。显然,1是一个int,并没有索引。您可能意味着l[1][0],即'取l'的第二个索引的第一个索引。

接下来,random in range()毫无意义。这样做是为了查看名称random引用的对象是否在您指定的范围内。好吧,因为random是一个模块,它可能不会在一个整数范围内。您是否意味着random.randrange(...)

第三,在索引c时,您已经以某种方式切换到字符串。这意味着您的所有结果都将存储在c中的相同索引处,即该字符串引用的结果。也许你的意思是c[str(l[0])]