我想第一次跳过 但很多人都算数。我是愚蠢的。
count = 0
for a in articles:
if count == 0:
count += 1
continue
data = a.b.c()
etc = a.abcde(E)
# ~~~~..........
已完成的代码
for c,l in enumerate(BeautifulSoup(requests.get(NS_URL, timeout=3).text, 'lxml').find_all('li')):
if c == 0: continue
link = l.a.get('href')
title = l.h1.a.text
img = l.img.get('src')
新代码
for l in BeautifulSoup(requests.get(NS_URL, timeout=3).text, 'lxml').find_all('li'))[1:]:
link = l.a.get('href')
title = l.h1.a.text
img = l.img.get('src')
我使用文章[1:]。 thx tdelaney
答案 0 :(得分:3)
如果要迭代项目并计算它们,请使用enumerate()
函数:
for count, a in enumerate(articles):
if count == 0:
continue
# now do whatever
答案 1 :(得分:2)
您可以使用“枚举”来包装“文章”,这些文章也将返回索引(递增序列)。如果index为0,则可以调用“continue”:
articles = ['one', 'two', 'three']
for i, a in enumerate(articles):
if not i: continue
# do something with a
print(a)
答案 2 :(得分:2)
您可以确保articles
是一个迭代器并使用next
来丢弃它。
i_articles = iter(articles)
next(i_articles)
for a in i_articles:
data = a.b.c()
或使用itertools
将序列切片为somelist[1::]
。
for a in itertools.islice(articles, 1, None, 1):
data = a.b.c.()