如何使用Selenium和Python在分隔的行中打印出所有带有计数器的元素文本

问题描述 投票:0回答:3

代码:

elements = driver.find_elements_by_xpath('//*[@id="field-options"]')
for element in elements:
    options = element.text  
    print(options)

这给出输出:

elementONE
elementTWO
elementTHREE

如何计算列表中的每个元素,并在每个元素之前打印数字,使其看起来像:

1   elementONE
2   elementTWO
3   elementTHREE
...
python selenium selenium-webdriver enumeration enumerate
3个回答
0
投票

为此使用enumerate

for i, element in enumerate(elements):
    options = element.text  
    print(i, options)

默认起始索引为0,因此将输出以上内容:

0   elementONE
1   elementTWO
...

您可以通过添加start参数来自定义它:

for i, element in enumerate(elements, start=1):
    #...

0
投票

尝试一下,

for i, element in enumerate(elements):
    options = element.text  
    print(i+1, options)

希望这对您有帮助!


0
投票

要将从1开始的计数器附加到每个列表项,可以使用enumerate()函数,如下所示:

  • 代码块:

    enumerate()
  • 控制台输出:

    for count, item in enumerate(driver.find_elements_by_xpath('//*[@id="field-options"]')):
        print(count+1, item.text)
    
© www.soinside.com 2019 - 2024. All rights reserved.