Python中的无限For循环问题

时间:2015-11-12 22:16:57

标签: python json

我需要从将信息加载到MySQL数据库所需的JSON字符串中提取ID。 ID是5位或6位数字,但包含此数字的JSON密钥是URL net_devices资源字符串,其末尾的数字如下例所示:

{u'router': u'https://www.somecompany.com/api/v2/routers/123456/'}

由于没有只有ID的密钥,我使用以下命令只返回JSON密钥字符串中的ID:

url = 'https://www.somecompany.com/api/v2/net_devices/?fields=router,service_type'

r = json.loads(s.get((url), headers=headers).text)
status = r["data"]


for item in status:
    type = item['service_type']
    router_url = item['router']
    router_id = router_url.replace("https://www.somecompany.com/api/v2/routers/", "")
    id = router_id.replace("/", "")
    print id 

这确实只返回我想要的ID值,如果结果的位数变化则无关紧要。

问题:当我在print语句上方包含两行时,此代码会创建一个无限循环。

如何更改语法以允许循环在所有返回的ID中运行一次,但仍然删除除数字ID之外的所有内容?

我是Python的新手,在大学毕业后经过很长时间的间歇后才开始重新编写代码。任何帮助将不胜感激!

更新 谢谢大家的反馈!在David和Gerrat的帮助下,我能够找到导致无限循环的问题,而不是代码的这一部分,而是另一个没有正确缩进的部分。我正在学习如何在Python中正确缩进循环,这是我的一个愚蠢的错误!再次感谢您的帮助!

0 个答案:

没有答案