4

有没有办法让这段代码更漂亮?

强 = li.find_all("强")
如果强:
  产量 li.find_all("强")

我的意思是这样的:

强 = li.find_all("强")
yield li.find_all("strong") if strong
4

2 回答 2

7

你会使用:

strong = li.find_all("strong")
if strong:
    yield strong

find_all() 而不是再次调用(在 BeautifulSoup 中,它会给出相同的结果,但会再次完成工作)。

没有“条件收益”。你可以玩把戏,yield from但我建议不要这样做。

于 2013-03-26T20:32:46.893 回答
0

你可以这样做:

strong = li.find_all("strong")
strong and (yield strong)

它简洁漂亮,但很难理解它在调试过程中做了什么。

于 2021-11-24T08:31:29.053 回答