问题描述
getcat(di)-(第6行)函数向我的主函数返回“ None”或某些字符串。
如果不是None,我想将此字符串添加到dict中。这是代码:
getids = Url.objects.values_list('keyword', 'id', 'url')
for keyword, id, url in getids:
if Url.objects.get(id=id).url != None:
...
...
ala = getcat(anResults)
if str(ala) != 'None':
dictt['shopping'] = ala
else:
pass
问题在于,一旦它通过!='None',它就会继续将相同的字符串添加到所有未来的循环中。
我尝试在各处放置中断,但似乎无法使其正常工作。 如果我更换
dictt['shopping'] = ala
与:
print url, ala
它可以正常工作,并且仅输出正确的url和ala值。
有任何想法吗?
1楼
的这部分代码str(ala) != 'None'
被比较的字符串到另一个字符串值无 。
如果要进行显式比较,可以将其重写为str(ala) != None
(None语句无引号)
另一种方法是重新编写类似pythonic的方法,例如:
if ala:
dictt['shopping'] = ala