gpt4 book ai didi

python - 如何告诉 python 不要打印列表中的项目?

转载 作者:行者123 更新时间:2023-12-01 03:56:14 34 4
gpt4 key购买 nike

我的 python 脚本解析来自多个 RSS 源的标题和链接。我将这些标题存储在一个列表中,并且我想确保我永远不会打印重复的内容。我该怎么做?

    #!/usr/bin/python
from twitter import *
from goose import Goose
import feedparser
import time
from pyshorteners import Shortener
import pause
import newspaper

dr = feedparser.parse("http://www.darkreading.com/rss_simple.asp")
sm =feedparser.parse("http://www.securitymagazine.com/rss/topic/2654-cyber-tactics.rss")



dr_posts =["CISO Playbook: Games of War & Cyber Defenses",
"SWIFT Confirms Cyber Heist At Second Bank; Researchers Tie Malware Code to Sony Hack","The 10 Worst Vulnerabilities of The Last 10 Years",
"GhostShell Leaks Data From 32 Sites In 'Light Hacktivism' Campaign",
"OPM Breach: 'Cyber Sprint' Response More Like A Marathon",
"Survey: Customers Lose Trust In Brands After A Data Breach",
"Domain Abuse Sinks 'Anchors Of Trust'",
"The 10 Worst Vulnerabilities of The Last 10 Years",
]

sm_posts = ["10 Steps to Building a Better Cybersecurity Plan"]

x = 1

while True:

try:

drtitle = dr.entries[x]["title"]
drlink = dr.entries[x]["link"]
if drtitle in dr_posts:
x += 1
drtitle = dr.entries[x]["title"]
drtitle = dr.entries[x]["link"]
print drtitle + "\n" + drlink
dr_posts.append(drtitle)
x -= 1
pause.seconds(10)
else:
print drtitle + "\n" + drlink
dr_posts.append(drtitle)
pause.seconds(10)

smtitle = sm.entries[x]["title"]
smlink = sm.entries[x]["link"]
if smtitle in sm_posts:
x +=1
smtitle = sm.entries[x]["title"]
smtitle = sm.entries[x]["title"]
print smtitle + "\n" + smlink
sm_posts.append(smtitle)
pause.seconds(10)
else:
print smtitle + "\n" + smlink
sm_posts.append(smtitle)
x+=1
pause.seconds(10)



except IndexError:
print "FAILURE"
break

目前我只能让它跳过条目。这将是一个问题,因为如果 RSS 提要中还有另一个重复项,那么我将得到更多重复项。

最佳答案

您可以利用数据结构 set ,因为它的“独特性”属性将为您完成工作。本质上,我们可以将您的列表设置为一个集合,然后再次设置一个列表,这可确保您的列表现在填充有严格唯一的值。

如果您有一个列表 l,那么您可以通过以下方式使其独一无二

l = list(set(l))

关于python - 如何告诉 python 不要打印列表中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37396291/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com