我是一个python /编码新手,我试图将两个for循环放入while循环中?我可以这样做吗?如何打印字典mydict以确保我正确地执行此操作?
我被困住了。
def runloop():
while uid<uidend:
for row in soup.findAll('h1'):
try:
name = row.findAll(text = True)
name = ''.join(name)
name = name.encode('ascii','ignore')
name = name.strip()
mydict['Name'] = name
except Exception:
continue
for row in soup.findAll('div', {'class':'profile-row clearfix'}):
try:
field = row.find('div', {'class':'profile-row-header'}).findAll$
field = ''.join(field)
field = field.encode('ascii','ignore')
field = field.strip()
except Exception:
continue
try:
value = row.find('div', {'class':'profile-information'}).findAl$
value = ''.join(value)
value = value.encode('ascii','ignore')
value = value.strip()
return mydict
mydict[field] = value
print mydict
except Exception:
continue
uid = uid + 1
runloop()
答案 0 :(得分:1)
在嵌套循环上:
你可以在python中给你一个错误之前非常深入地嵌套for和while循环,但是超过4深度通常是不好的形式。如果你发现自己需要做很多嵌套,那就做另一个功能。你的使用很好。
代码存在一些问题:
runloop()
来实际使用该函数。答案 1 :(得分:0)
您可以根据需要在其他循环中放置尽可能多的循环。这些称为嵌套循环。
另外,打印字典很简单:
mydict = {}
print mydict
答案 2 :(得分:0)
你没有帮助自己实现这些目的
except Exception:
continue
基本上说,“如果出现任何问题,请携带一个,不要告诉我。”
这样的事情让你至少可以看到异常
except Exception as e:
print e
continue
mydict
是否在某处宣布?这可能是你的问题