我刚开始编写代码,我制作了一个不和谐的机器人,它可以访问API,但是我正在做的一个特定特性根本不起作用,在api中,一切都是这样的,这就是全部,
[{imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/F06C5733_large.png", manifestId: 5733,…},…]
0: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/F06C5733_large.png", manifestId: 5733,…}
1: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/7F34984_large.png", manifestId: 984,…}
2: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/E6B6417_large.png", manifestId: 417,…}
3: {,…}
4: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/845E743_large.png", manifestId: 743,…}
5: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/3E9F5241_large.png", manifestId: 5241,…}
6: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/9C766302_large.png", manifestId: 6302,…}
7: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/65696303_large.png", manifestId: 6303,…}
8: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/25A56304_large.png", manifestId: 6304,…}
9: {imageUrl: "https://cdn.thetrackernetwork.com/cdn/fortnite/BBB66307_large.png", manifestId: 6307,…}正如您所看到的,它是一个列表,而不是一个dict,所以我不能使用与我的其他命令相同的代码,因为那是dict。
if req.status_code == 200:
try:
print(req.json())
lifetime_stats = req.json()['lifeTimeStats']
return lifetime_stats[0:]
except KeyError:
return False
else:
return False我试图用于这一项的代码是
if req.status_code == 200:
try:
print(req.json())
storefront_catalog = req.json()[0]
return storefront_catalog()
except KeyError:
return False
else:
return False当我试图将TypeError: list indices must be integers or slices, not str的结尾变成字符串时,我一直得到错误的req.json,所以我把它变成了一个数字,从return storefront_catalog取走了这个数字,现在它搜索了api,并在控制台中显示了它,然后给出了错误TypeError: 'dict' object is not callable。
我可能在这里说了一些错误的话,因为我说我对编码和python非常陌生。
感谢任何帮助我的人
发布于 2018-10-21 18:43:35
这只是猜测,但看起来您最近的错误是执行return storefront_catalog()的结果。因为此时storefront_catalog不是一个可调用的对象,而是一个字典,所以您不能像调用方法一样调用它。我不知道您想用这个返回语句做什么,但是如果您想“让它工作”,可以尝试使用return storefront_catalog。顺便提一下,我建议在调试代码时使用type方法作为初步步骤。这将告诉你你在工作的类型,并应该帮助你找出你的错误所在。您可以在print中这样称呼它:
print(type(storefront_catalog))https://stackoverflow.com/questions/52918605
复制相似问题