[英]For loop stop when number is reached
car_names = driver.find_elements_by_xpath('//h2[@class="vehicle-item__title"]')
carnamelist = []
for cars in car_names:
# print(len(cars))
carnamelist.append(cars.text)
# print((len(car_names)))
car_names are now 50, but I would like to stop when it reaches 17 car_names 现在是 50,但我想在它达到 17 时停止
How can I achieve that?我怎样才能做到这一点?
One approach would be to zip
with a range of 17 ( zip
stops automatically when either input is exhausted):一种方法是使用范围为 17 的zip
(当任一输入用尽时zip
会自动停止):
for cars, _ in zip(car_names, range(17)):
carnamelist.append(cars.text)
Another would be to break
in your loop:另一个是break
你的循环:
for cars in car_names:
carnamelist.append(cars.text)
if len(carnamelist) >= 17:
break
My approach would be to use zip
and make it a list a comprehension:我的方法是使用zip
并使其成为一个理解列表:
carnamelist = [cars.text for cars, _ in zip(car_names, range(17))]
If car_names
is a list (or anything else that supports slicing) you can do this much more simply with a slice:如果car_names
是一个列表(或任何其他支持切片的),您可以使用切片更简单地执行此操作:
carnamelist = [cars.text for cars in car_names[:17]]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.