Python 当我满足特定的“如果”条件时,如何跳过一轮“for loop”并继续下一轮?

Python 当我满足特定的“如果”条件时,如何跳过一轮“for loop”并继续下一轮?,python,python-3.x,web-crawler,Python,Python 3.x,Web Crawler,我正在为网址开发一个网络爬虫,但遇到了一个问题 我试图做的是抓取每个二手车库存数据列表,如果在每个数据的第4列有一个图像数据,它是粉红色的图像,表示在价格标签中售罄,我将跳过该列表并继续抓取下一个库存数据 我上面的意思是跳过下面的全部代码,开始下一轮for循环。continue跳过only if函数并继续运行以下代码 下面是我的代码 from bs4 import BeautifulSoup import urllib.request URL=http://www.bobaedream.co.

我正在为网址开发一个网络爬虫,但遇到了一个问题

我试图做的是抓取每个二手车库存数据列表,如果在每个数据的第4列有一个图像数据,它是粉红色的图像,表示在价格标签中售罄,我将跳过该列表并继续抓取下一个库存数据

我上面的意思是跳过下面的全部代码,开始下一轮for循环。continue跳过only if函数并继续运行以下代码

下面是我的代码

from bs4 import BeautifulSoup
import urllib.request

URL=http://www.bobaedream.co.kr/cyber/CyberCar.php?gubun=I&page=20
res = urllib.request.urlopen(URL)
html = res.read()
soup = BeautifulSoup(html, 'html.parser')
table = soup.find('table', class_='cyber')

# 50 lists per each page
links = []
for p in range(50):

    #Car_Price
    car_price=table.find_all('td', class_='price')
    if car_price[p].find('em').text:
        car_price_confirm = car_price[p].find('em').text
    elif car_price[p].find('em').find('img'):
        pass

    carinfo = table.find_all('td', class_='carinfo')
    carinfo_title = carinfo[p].find('a', class_='title').text
    links.append(carinfo[p].find('a')['href'])

    print(p+1, car_price_confirm, link[p])
你在找我。 这正是你想要的

例如,打印不会针对这些对运行。 继续跳转到下一个迭代:

for i in range(5):
    if i % 2 == 0:
        continue
    print(i)

# Do not print evens
1
3
这个问题也很有帮助

您正在寻找的。 这正是你想要的

例如,打印不会针对这些对运行。 继续跳转到下一个迭代:

for i in range(5):
    if i % 2 == 0:
        continue
    print(i)

# Do not print evens
1
3

这个问题也很有帮助

EDIT:continue将跳过整个迭代。它对if语句没有影响。检查你的代码

Python中的continue语句将控件返回到while循环的开头。continue语句拒绝循环当前迭代中的所有剩余语句,并将控件移回循环顶部

要跳过当前for循环的其余部分,请使用该语句

for p in range(50):
    car_price=table.find_all('td', class_='price')

    if car_price[p].find('em').find('img'):
        continue

    ...

编辑:继续跳过整个迭代。它对if语句没有影响。检查你的代码

Python中的continue语句将控件返回到while循环的开头。continue语句拒绝循环当前迭代中的所有剩余语句,并将控件移回循环顶部

要跳过当前for循环的其余部分,请使用该语句

for p in range(50):
    car_price=table.find_all('td', class_='price')

    if car_price[p].find('em').find('img'):
        continue

    ...

谢谢你的回复。但我的意思是跳过下面的全部代码,开始下一轮for循环。continue跳过了only if函数并继续运行以下代码。感谢您的评论,我想我已经解决了跳过并重新启动for循环的问题。但我从代码中得到了另一个问题。你介意帮我解决这个问题吗?你完全改变了问题,我认为这是不对的。至少你试着找出错误是什么?谢谢你的回复。但我的意思是跳过下面的全部代码,开始下一轮for循环。continue跳过了only if函数并继续运行以下代码。感谢您的评论,我想我已经解决了跳过并重新启动for循环的问题。但我从代码中得到了另一个问题。你介意帮我解决这个问题吗?你完全改变了问题,我认为这是不对的。至少你试着找出错误是什么?谢谢你的评论,我想我已经解决了跳转和重新开始循环的问题。但我从代码中得到了另一个问题。你介意帮我解决这个问题吗?谢谢你的评论,我想我已经解决了跳转和重新开始循环的问题。但我从代码中得到了另一个问题。你介意帮我解决这个问题吗?在你收到答案后,请不要完全改变你的问题。如果需要,可以问另一个问题。在收到答案后,请不要完全更改您的问题。如果需要,再问一个问题。