我如何通过列表理解来做到这一点?或者如何从列表中提取每个偶数位置元素并将其存储在列表中?

发布于 2025-01-12 00:34:38 字数 353 浏览 0 评论 0原文

p = [i.text.strip() for i in soup.select('p.card-text')]
j = []
for i in p:
     if p.index(i)%2 == 0:
          j.append(i) 
  • 我这样做是因为我只想从列表 p 中提取偶数位置元素。
  • 还有其他方法可以做到这一点(从列表中仅获取偶数位置元素)吗?
  • 如果没有,我如何使用列表理解编写上面的代码?我使用此代码提取了偶数位置元素。我想知道我可以应用任何其他方法或者如何为上述代码编写列表理解?
p = [i.text.strip() for i in soup.select('p.card-text')]
j = []
for i in p:
     if p.index(i)%2 == 0:
          j.append(i) 
  • I am doing this because I only want to extract even position element from my list p.
  • Is there any other way to do this (to get only even position element from list)?
  • If not, how can I write the code above using list comprehension? I have extracted even position element using this code. I want to know of any other method I can apply or how to write list comprehension for the above code?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

杀手六號 2025-01-19 00:34:38

您可以在 python 中使用列表理解enumerate来尝试以下操作

p = [i.text.strip() for index,i in enumerate(soup.select('p.card-text')) if index%2==0]

You can try the following by using list comprehension along with enumerate in python

p = [i.text.strip() for index,i in enumerate(soup.select('p.card-text')) if index%2==0]
凡间太子 2025-01-19 00:34:38

嗯...简单地切片:

j = p[::2]

或者如果 select 返回一个 list (看起来确实如此),请尽早执行以保存工作:

soup.select('p.card-text')[::2]

Um... simply slice:

j = p[::2]

Or if select returns a list (looks like it does), do it earlier to save work:

soup.select('p.card-text')[::2]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文