首页 > 解决方案 > 在python中逐行浏览数组

问题描述

我有以下代码:

for link in soup.find_all("td", class_="textleft",limit=30):
    a = link.find('a').attrs['href']
    print(a)

这将返回 30 个对象:

/HORTICHUELAS-N-4812.html
/ISABEL-ALONSO.html
/TRANS-CEREZUELA.html
/NATURE-CHOICE.html
/AGRUPA-INVER.html
/HERBEX-IBERIA.html
/HORTOFRUTICOLA-NORIAS-ALMERIA.html
/GARCIDEN.html
/CASUR.html
/HORTOSABOR-MEDITERRANEO.html
/GRUPO-CONTROL-EMPRESA-SEGURIDAD.html
/VEGACANADA.html
/ONDUSPAN.html
/EJIDOMAR-AND.html
/ENZA-ZADEN-ESPANA.html
....
...

因此,我可以将最多 30 个结果放入一个变量中,例如逐个迭代每个结果

var 1 = /SOTRAFA.html
var 2 = /AGROPONIENTE.html

标签: pythonpython-3.x

解决方案


我建议使用 alist而不是不同的变量。列表更适合存储和迭代一组值。

# accumulate links
my_list = []
for link in soup.find_all("td", class_="textleft",limit=30):
    a = link.find('a').attrs['href']
    print(a)
    my_list.append(a)

# display links
for i in range(len(my_list)):
    print('var', i, '=', my_list[i])

推荐阅读