首页 > 解决方案 > 使用 itertools 循环 for 循环仅 3 次

问题描述

Python初学者在这里寻求开发之神的一些指导。我只想在中断之前重复for循环3(或x)次,但我仍然陷入无限循环。有什么建议么?

for url in itertools.cycle(url_list):
    browser.get(url)
    time.sleep(6)
    cycle + 1
    if check_add_cart():
        print('In-Stock =) / ' + browser.title + ' / ' + now.strftime('%Y-%m-%d %H:%M:%S'))
    elif not check_add_cart():
        print('Out-of-Stock =( / ' + browser.title + ' / ' + now.strftime('%Y-%m-%d %H:%M:%S'))
    elif cycle == 3:
        break
        browser.close()
    else:
        print('Error')

 

标签: pythonloops

解决方案


你不需要itertools

url_list = ['url_0', 'url_1', 'url_2']
x = 3

for i in range(x):
    print(f'Round {i}:')
    for url in url_list:
        print(f'  url: {url!r}')

输出:

Round 0:
  url: 'url_0'
  url: 'url_1'
  url: 'url_2'
Round 1:
  url: 'url_0'
  url: 'url_1'
  url: 'url_2'
Round 2:
  url: 'url_0'
  url: 'url_1'
  url: 'url_2'

推荐阅读