Ayo*_* M. 2 python list-comprehension
我是python的新手,在阅读BeautifulSoup教程时,我不明白这个表达"[x for x in titles if x.findChildren()] [: - 1]"我不明白?你能解释清楚吗?
titles = [x for x in titles if x.findChildren()][:-1]
Run Code Online (Sandbox Code Playgroud)
从[:-1]开始,这将提取一个包含除最后一个元素之外的所有元素的列表.
>>> a=[1,2,3,4,5]
>>> a[:-1]
[1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
第一部分,将列表提供给[:-1](在python中切片)
[x for x in titles if x.findChildren()]
Run Code Online (Sandbox Code Playgroud)
这将生成一个列表,其中包含列表"titles"中的所有元素(x),它们满足条件(对于x.findChildren()返回True)