我想为这个opertions分配一个布尔值:
soup = BeautifulSoup(page)
x = soup.find('tr')
y = x.findAll('td')
left = y[0]
如果assert('blah'in left['class'])
成立 - 意味着左边有一个名为'blah'的类,那么
return true
。
答案 0 :(得分:0)
BTW,您使用的是find
而不是find_all
,因此无需像y[0]
soup = BeautifulSoup(page)
x = soup.find('tr')
y = x.find('td', attrs={'class': 'blah'})
return len(y)>0 # or assert len(y)>0
答案 1 :(得分:0)
假设left
有密钥class
,那么
return True if 'blah' in left['class'] else False
如果这个假设并不总是成立,你可以用
来破坏它return True if 'class' in left and 'blah' in left['class'] else False
但事情变得越来越难看。
如果使用assert
,则在此条件不为真时抛出异常(并且不返回任何值)。如果那是你真正想要的;
assert('blah' in left['class'])
return True
将评估您的assert
并抛出异常,或者继续并返回True
。这相当于;
if 'blah' in left['class']:
return True
else:
raise AssertionError('blah not in left["class"]')